Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
125174f.doc
Скачиваний:
182
Добавлен:
08.06.2015
Размер:
386.05 Кб
Скачать

1.4 Регрессионное тестирование

Тестирование программной системы выполняется на протяжении всего процесса разработки, в течение которого система постоянно меняется: либо в результате исправления ошибок и устранения дефектов, либо в результате расширения ее функциональных возможностей. Очевидно, что каждое изменение исходного кода программы может привести к возникновению новых ошибок и дефектов, отсутствующих или не выявленных ранее. В связи с этим после каждого изменения программного кода необходимо выполнять тестирование, чтобы удостовериться, что очередная модификация не вызвала нежелательных побочных эффектов и система по-прежнему функционирует в соответствии с заданными требованиями. Такое тестирование называется регрессионным. Соответственно, ошибки системы, возникающие после ее модификации (когда после внесения изменений перестает работать то, что должно было продолжать работать), называются регрессионными.

Регрессионное тестирование включает в себя следующие стадии:

1) анализ изменений в системе;

2) выбор тестовых примеров для проверки системы;

3) выполнение тестовых примеров;

4) анализ результатов выполнения тестов;

5) модификация тестового окружения, тестовых примеров или уведомление разработчиков о дефекте системы.

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

Регрессионное тестирование, по сути, представляет собой повторное выполнение обычного тестирования, поэтому виды регрессионного тестирования совпадают с видами обычного тестирования.

Тестирование измененной версии программы «П'» в тех же условиях, в которых выполнялось тестирование предыдущей версии программы «П», называется управляемым регрессионным тестированием. Для обеспечения управляемости регрессионного тестирования должны выполняться следующие условия:

1) И при модульном, и при интеграционном регрессионном тестировании в качестве модулей, вызываемых тестовым модулем, должны использоваться реальные модули программной системы.

2) Должна быть обеспечена корректность информации о модификации системы. Информация о модификации указывает на измененные модули и разделы спецификации требований, не подразумевая при этом корректность самих изменений. При изменении спецификации требований необходимо усиленное тестирование изменившихся функций этой спецификации и всех функций, изменение которых могло быть побочным эффектом.

3) В программе не должно быть ошибок, кроме тех, которые возникли вследствие модификации системы.

4) Должны быть доступны тесты, использовавшиеся для предыдущих версий системы.

5) Должна быть доступна информация о результатах выполнения существующего набора тестов для предыдущей версии программной системы.

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

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]