Регрессионное тестирование
Определены два типа регрессионного тестирования:
-прогрессивное регрессионное тестирование предполагает модификацию технического задания. При этом к системе программного обеспечения добавляются новые модули, а прогрессивное регрессионное тестирование выполняется после адаптивного или усовершенствующего сопровождения.
-при корректирующем регрессионном тестировании техническое задание не изменяется, а модифицируются только некоторые операторы программы и, возможно, конструкторские решения. Корректирующее регрессионное тестирование выполняется во время тестирования в цикле разработки и после корректирующего сопровождения, то есть после того, как над программным обеспечением были выполнены некоторые корректирующие действия.
Подходы к отбору регрессионных тестов:
-активный подход заключается в уменьшении объема регрессионного тестирования, пренебрегает риском пропустить дефекты и применяется для тестирования систем с высокой исходной надежностью, а также в случаях, когда суммарные изменения невелики.
-консервативный подход заключается в отборе всех тестов, которые с ненулевой вероятностью могут обнаруживать дефекты и позволяет обнаруживать большее количество ошибок, но приводит к созданию более обширных наборов регрессионных тестов.
Стадии жизненного цикла программного обеспечения
Структурное программирование
Модульное программирование
Компонентно-ориентированное программирование
Стадии жизненного цикла программного обеспечения
Объектно-ориентированный подход:
Объектно-ориентированный анализ Объектно-ориентированное проектирование Объектно-ориентированное программирование
Стадии жизненного цикла программного обеспечения
т
р
а
д
и
ц
и
о
н
н
ы
й
ЖЦ
АНАЛИЗ ПРОТОТИПИРОВАНИЕ
ПРОЕКТИРОВАНИЕ ПРОЕКТИРОВАНИЕ СПЕЦИФИКАЦИЙ
КОДИРОВАНИЕ |
|
КОНТРОЛЬ ПРОЕКТА |
|
|
|
ТЕСТИРОВАНИЕ КОДОГЕНЕРАЦИЯ
СОПРОВОЖДЕНИЕ СИСТЕМНОЕ ТЕСТИРОВАНИЕ
с
и
с
п
о
л
ь
з
о
в
а
н
и
е
м
CASE-средств
СОПРОВОЖДЕНИЕ
Регрессионное тестирование
Для обеспечения управляемости регрессионного тестирования необходимо выполнение следующих условий:
-как при модульном, так и при интеграционном регрессионном тестировании в качестве модулей, вызываемых тестируемым модулем непосредственно или косвенно, должны использоваться реальные модули системы
-информация об изменениях должна быть корректна
-в программе нет ошибок, кроме тех, которые могли возникнуть из-за её изменения
-тесты, применявшиеся для тестирования предыдущих версий программного продукта, доступны, при этом протокол прогона тестов состоит из входных данных, выходных данных и траектории
-для проведения регрессионного тестирования с использованием существующего набора тестов необходимо хранить информацию о результатах выполнения тестов на предыдущих этапах тестирования