Лекция 11. Виды, критерии и методы тестирования. Методы структурного тестирования программ

Остановимся более подробно на критериях и методах тестирования программных модулей и групп программ, решающих законченные функциональные задачи.

При этом будут рассматриваться следующие виды тестирования:

· модульное – проверка корректности структуры модулей и их основных конструктивных компонент (циклов, блоков, разветвлений), функций и данных (входных и выходных);

· интеграционное – проверка корректности управляющих и информационных связей между модулями. При проведении интеграционного тестирования важным является порядок сбора модулей в единую программу. Существует два основных подхода к комбинированию модулей:

¨ пошаговое – каждый модуль подключается к набору ранее оттестированных модулей (сверху вниз или снизу вверх);

¨ монолитное – все модули одновременно объединяются в программу;

· системное – проверка соответствия интегрированной в единое целое программной системы спецификациям с учетом среды и режима выполнения;

Модульное и интеграционное тестирование основаны на структурных методах (принцип "белого ящика"). При применении этих методов существенно используются знания о структуре программы вне зависимости от того, является ли она отдельным модулем или группой модулей. При структурном тестировании всегда существует модель, отражающая логику работы программы и критерий проведения тестирования, причем количество необходимых тестов при этом ограничено.

При проведении системного тестирования используется методология функционального тестирования (принцип "черного ящика), в которой для построения тестов не используется информация о структуре программы, а используются ее функциональные спецификации.

При функциональном тестировании средних и больших программных проектов трудно предложить правила, ограничивающие необходимый объем тестирования, т. к. системное тестирование включает в себя множество категорий тестов, в том числе тесты для проверки:

· функциональности программы;

· работы на предельных объемах;

· работы на предельных нагрузках;

· удобства эксплуатации программы;

· защиты от несанкционированного доступа;

· производительности;

· требований к памяти;

· конфигураций оборудования;

· совместимости;

· удобства инсталляции;

· надежности;

· восстановления при сбоях;

· документации на программу.

Деление методов тестирования на функциональные и структурные производится в зависимости от источника тестовых данных. Как правило, структурное и функциональное тестирование хорошо сочетаются, так что для каждого структурного теста существует его точная функциональная интерпретация.

Остановимся более подробно на этих методах тестирования.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: