
- •«Уральский промышленно-экономический техникум»
- •Технология разработки программного обеспечения: тестирование
- •Структурный метод (метод «Белого (стеклянного) ящика»)
- •Поведенческий метод «Черного ящика»
- •Метод регрессивного тестирования
- •Метод «Серого ящика»
- •Метод опытной эксплуатации
- •Тестирование эргономичности
- •Метод эквивалентного разбиения
- •Метод анализа граничных значений
- •Метод тестирования таблицы решений
- •Отладка программы
- •7.1. Процессы жц верификация и валидация программ
- •7.2. Тестирование программ
- •7.2.1. Статические методы тестирования
- •7.2.2. Динамические методы тестирования
- •7.2.3. Функциональное тестирование
- •7.3. Инфраструктура процесса тестирования пс
- •7.3.1. Методы поиска ошибок в программах
- •7.3.2. Классификация ошибок и тестов
- •7.3.1. Служба тестирования пс
- •7.3.2. Управление процессом тестирования
Автономная некоммерческая профессиональная образовательная организация
«Уральский промышленно-экономический техникум»
Технология разработки программного обеспечения: тестирование
Учебно-методическое пособие для
специальности 230115 «Программирование в компьютерных системах»
Екатеринбург, 2014
-
ОДОБРЕНО
цикловой комиссией
информатики и вычислительной техники
Председатель комиссии
______________/ О. Г. Максимова
подпись
Протокол № ____
от «__» ______________ 201___ г.
УТВЕРЖДАЮ
Заместитель директора по
учебной работе
________________/ Н. Б. Чмель
«__» ___________ 201___ г.
Организация-разработчик: Автономная некоммерческая профессиональная образовательная организация «Уральский промышленно-экономический техникум»
Разработчик:
Максимова Оксана Геннадьевна, преподаватель специальных дисциплин,
Методист АН ПОО «Уральский промышленно-экономический техникум»
Содержание
Поведенческий метод «Черного ящика» 5
Метод регрессивного тестирования 7
Метод «Серого ящика» 8
Метод опытной эксплуатации 9
Тестирование эргономичности 10
Метод эквивалентного разбиения 11
Метод тестирования таблицы решений 13
Отладка программы 23
Структурный метод (метод «Белого (стеклянного) ящика»)
Тестирование методом «Белого ящика» (white box) предполагает обработку тестируемой программы как «прозрачного объекта»
В отличие от метода "Черного ящика" данный метод основан на использовании определенных знаний программного кода, необходимых для контроля корректности данных на выходе. Тест является правильным только в том случае, когда специалист, тестирующий программное обеспечение (ПО), знает, что конкретно должна делать программа.
К методам «белого ящика» относятся методы
покрытия операторов,
покрытия решений,
покрытия условий,
метод комбинаторного покрытия условий.
Все эти методы базируются на том, что при выполнении тестов должны выполняться те или иные конструкции в тексте программы.
Тестирование методом «белого ящика» не обрабатывает случайные ошибки, но наряду с этим весь видимый код должен быть удобочитаемым.
Основной трудностью подобных методов является сложность отслеживания вычислений времени выполнения.
Поведенческий метод «Черного ящика»
Тестирование методом "Черного ящика" (black box) предполагает обработку системы как «непрозрачного объекта».
Основная цель – выяснение ситуаций, в которых поведение программы не соответствует ее спецификации.
Тестовые данные генерируются на основе функциональной спецификации программы, они имеют граничные значения. Поэтому для тестирования функций программы (в случае слишком большого числа вариантов тестов) достаточно протестировать граничные значения и некоторые случайные промежуточные значения входных данных. Таким образом, знание внутренней структуры в явном виде не используется.
Тестирование этим методом обычно подразумевает проверку функциональных возможностей
При тестировании программного обеспечения методом «Черного ящика» специалист по тестированию ПО знает только набор вводимых параметров и ожидаемые на выходе результаты; каким образом программа достигает этих результатов, ему не известно. Он также никогда не проверяет программный код и не нуждается в дополнительном знании программы, кроме ее технического описания.
К методам «черного ящика» относятся
метод эквивалентных разбиений,
анализ граничных условий,
метод функциональных диаграмм,
тестирование областей (domain testing).
Этот подход требует наименьших затрат на тестирование и поэтому является наиболее распространенным в повседневной практике, но у него есть целый ряд недостатков:
таким способом невозможно найти взаимоуничтожающиеся ошибки,
некоторые ошибки возникают достаточно редко (ошибки работы с памятью) и потому их трудно найти и воспроизвести,
сложность проверки соответствия конкретного программного продукта его спецификации.
Основным же преимуществом тестирования по методу «чёрного ящика» является его объективность. Те потенциальные ошибки, которые могут быть выявлены методом «белого ящика» требуют практического подтверждения, что они действительно являются ошибками и что существует путь реализовать эти ошибки (т. е. ошибка не отсекается на каком-либо другом уровне проверок), что зачастую проще выполняется именно функциональными методами, как и в случае метода «чёрного ящика».