Глава 2 65
циональных требований (по безопасности, надежности и др.), а также правильности
внешних интерфейсов системы со средой окружения.
В разделе выделены такие наиболее распространенные и обоснованные цели
и, соответственно, виды тестирования: функциональное тестирование, регресси-
онное тестирование, тестирование эффективности, нагрузочное (стрессовое) тести-
рование, альфа и бета-тестирование, тестирование конфигурации, тестирование
производительности, надежности и др. К виду тестирования отнесены также мето-
ды проверки поведения системы на этапе испытаний ПО и его приемки.
В разделе Приемы (техники) тестирования представлена следующая клас-
сификация приемов тестирования:
– приемы, базирующиеся на интуиции и опыте исполнителя (тестирование
по опыту (ad hoc), исследовательское тестирование),
– приемы, базирующиеся на анализе спецификации (по формальным спе-
цификациям, на основе эквивалентного разделения программы на части, анализа
граничных значений, таблиц решений, анализа переходов состояний и др.),
– приемы, базирующиеся на анализе кода (покрытие условий и решений в
блок-схеме, анализ «жизненного цикла» переменных и др.),
– специальные приемы обнаружения дефектов (обнаружение дефектов на
основе анализа рисков, «подсев» дефектов, мутационное тестирование),
– приемы, базирующиеся на сценариях и условиях использования (по опе-
рационному профилю, по специализированным методикам испытаний системы - на
надежность, безопасность и др.),
– приемы, ориентированные на определенный тип и архитектурную при-
роду ПО (приемы объектно-ориентированного, компонентно-ориентированного,
Web-ориентированного тестирования, тестирования на соответствие протоколам,
тестирование систем реального времени и др.).
Измерения с помощью метрик, связанных с тестированием, используются
для анализа качества ПО, как инструмент оптимизации планирования и выполне-
ния тестов, а также для управления процессом тестирования.
Для оценки программ в ходе тестирования рекомендуются метрики программ
– размера, структурной сложности, частоты обращения к модулям; метрики (моде-
ли) дефектов и отказов - плотности дефектов, интенсивности отказов, роста надеж-
ности и др. Для оценки эффективности выполненных тестов рекомендуются метри-
ки покрытия/глубины тестирования, оценки результатов мутаций и подсева дефек-
тов, сравнительного анализа различных приемов тестирования.
В разделе Процесс тестирования указывается, что концепции, стратегии,
техники и измерения тестирования должны быть объединены в единый процесс
тестирования как деятельности по обеспечению качества на основе учета четырех
элементов и связанных с ними факторов: людей, инструментов, регламентов и ко-
личественных оценок (измерений). Базовый стандарт по процессам ЖЦ ISO/IEC
12207 не выделяет всю деятельность по тестированию в качестве единого самостоя-
тельного процесса, однако рассматривает соответствующие принципы работ по
тестированию как неотъемлемую часть процессов ЖЦ.
Составной частью формализации процесса тестирования и основой для сер-
тификации и оценивания организации по моделям зрелости и стандартам качества
(например, СММI) является документация тестирования. При ее составлении
SWEBOK рекомендует руководствоваться стандартом IEEE Std. 829:1998 «Standard