Особенность тестировании программ как «черный ящик» заключается в следующем:
Известны: функции программы.
Исследуется: работа каждой функции на всей области определения.
Как показано на рисунке, основное место приложения тестов «черного ящика» – интерфейс ПО.
Рисунок 6.1 – Тестирование «черного ящика»
Эти тесты демонстрируют:
• как выполняются функции программ;
• как принимаются исходные данные;
• как вырабатываются результаты;
• как сохраняется целостность внешней информации.
При тестировании «черного ящика» рассматриваются системные характеристики программ, игнорируется их внутренняя логическая структура.
Методы черного ящика 1. Метод эквивалентных разбиений
Его основу составляют 2 положения:
• Каждый тип должен включать столько различных входных и выходных условий, сколько необходимо для того, что бы минимизировать общее число необходимых тестов.
• Необходимо разбивать входную область программы на конечное число классов эквивалентности
Класс эквивалентности выделяется путем выбора каждого входного условия и разбиением его на две или более групп.
2. Анализ граничных решений (АГР)
Граничные условия – ситуация, возникающая непосредственно на границе, выше или ниже границ входных или выходных элементов класса эквивалентности (КЭ)
АГР предполагает:
• Выбор любого элемента в КЭ в качестве представительного при АГЗ осуществляется таким образом, чтобы проверить тестом каждую границу этого класса.
• При разработке тестов рассматриваются не только входные условия, но и выходные.
3. Метод функциональных диаграмм
Недостатком метод граничных решений и метод эквивалентных разбиений является то, что они не исследуют комбинации входных условий.
Метод функциональных диаграмм помогает создать высоко результирующие тесты.
Функциональная диаграмма представляет собой формальный язык, на который транслируется спецификация, написанная на естественном языке.
Построение тестов осуществляется в несколько этапов:
• спецификация разбивается на несколько участков
• спецификация определяется причиной и следствием
Причины и следствия определяются путем последовательного чтения спецификации, каждой причине и следствию присваивается отдельный номер.