Регрессионное тестирование программных систем

Регрессионное тестирование направлено на проверку работоспособности ранее созданного функционала после внесения в систему каких-либо изменений: слияния кода, устранения дефектов, миграции на другую ОС или сервер.

Регрессионное тестирование программных систем

Регрессионное тестирование – это разновидность функционального тестирования. Отличие между ними в том, что проверяется работоспособность не новых, а ранее созданных модулей. Нередко случается, что после внесения обновлений старые модули перестают работать. Тесты выявляют причины ошибок для быстрой отладки ПО.

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

Выделяют несколько типов подобного тестирования:

  • регрессия багов – позволяет увидеть, что исправление дефекта не дало должного результата;
  • регрессия старых багов – дает возможность обнаружить, что причиной повторного появления ранее исправленных ошибок являются недавние изменения программного кода или данных;
  • регрессия побочного эффекта – показывает, что произведенные в системе изменения стали причиной поломки других частей ПО.

Хорошей практикой считается после исправления ошибки создавать тест для нее и запускать его после каждого последующего изменения системы. Для удобства нередко используется автоматическое регрессионное тестирование через определенный промежуток времени (раз в сутки, неделю).