PICT

Материал из Testopedia
Перейти к: навигация, поиск

PICT

PICT- свободный инструмент, разработанный Microsoft, для Pairwise Testing'а.

Формирование тестовых наборов данных происходит таким образом, что каждое тестируемое значение каждого из проверяемых параметров хотя бы единожды сочетается с каждым тестируемым значением всех остальных проверяемых параметров. Допустим, какое-то значение (налог) для человека рассчитывается на основании его пола, возраста и наличия детей - получаем три входных параметра, для каждого из которых для тестов выбираем каким-то образом значения. Например: пол - мужской или женский; возраст - до 25, от 25 до 60, более 60; наличие детей - да или нет. Для проверки правильности расчётов можно, конечно, перебрать все комбинации значений всех параметров, которых будет 12. А можно решить, что нам не нужны сочетания значений всех параметров со всеми, а мы хотим только убедиться, что мы проверим все уникальные пары значений параметров. Т.е., например, с точки зрения параметров пола и возраста мы хотим убедиться, что мы точно проверим мужчину до 25, мужчину между 25 и 60, мужчину после 60, а также женщину до 25, женщину между 25 и 60, ну и женщину после 60. И точно так же для всех остальных пар параметров. И таким образом, мы можем получить гораздо меньше наборов значений (в них есть все пары значений, правда некоторые дважды)- всего 6.

Такой подход примерно и составляет суть техники pairwise testing - мы не проверяем все сочетания всех значений, но проверяем все пары значений. Разумеется, инструмент PICT, как и технику Pairwise testing применять именно в тех случаях, в которых это целесообразно. Вот если, например, у нас есть форма с каким-то количеством разных полей, данные из которых просто сохраняются в базу данных, то применение этой техники практически не имеет смысла, ведь данные не взаимодействуют друг с другом (хотя и могут быть нюансы, как эти данные сохраняются в базу). А pairwise testing - это та техника, применять которую стоит именно в случае взаимодействующих значений (для невзаимодействующих - чаще всего достаточно просто отдельной проверки каждого из параметров). Под взаимодействующими параметрами я понимаю в первую очередь те, которые влияют на результат не просто своими собственными отдельными значениями, но именно комбинациями друг с другом . Кстати, вот хороший пример взаимодействия - определение вариантов тестовой среды, например, из нескольких операционных систем, браузеров и разрешений монитора. Итак, если параметры задачи взаимодействуют, то, казалось бы, тут pairwise testing и станет тем чудесным решением, которое и силы сэкономит, и полное тестирование обеспечит. Но конечно, эта техника обеспечивает достаточно высокое покрытие, но далеко не полное - если вдруг ошибка возникает при сочетании трёх, четырёх или более параметров, то pairwise testing может и не помочь (это уж как повезёт). По-хорошему, применению pairwise testing должен предшествовать анализ тестируемого приложения на предмет того, насколько тестирование именно сочетаний пар параметров является для него целесообразным.