Ответ
Test Exit Criteria — это заранее определённый набор измеримых условий, которые должны быть выполнены для принятия решения о завершении тестирования и готовности продукта к выпуску.
Цель: Объективно определить момент окончания тестирования, избегая субъективных решений и преждевременного релиза.
Типичные примеры критериев:
- Качество дефектов: Все дефекты с критическим и высоким приоритетом исправлены и перепроверены.
- Покрытие: Достигнут целевой уровень покрытия кода (
code coverage) или требований (requirements coverage), например, 90%. - Выполнение тестов: Успешно выполнены все запланированные тестовые сценарии, включая smoke, регрессионные и acceptance-тесты.
- Производительность: Ключевые метрики производительности (время отклика, пропускная способность) соответствуют SLA.
- Стабильность: Приложение работает стабильно в течение определённого времени (например, 48 часов) без критических сбоев.
Пример проверки на Python:
def is_testing_complete(critical_bugs_fixed, test_coverage_percent, all_tests_passed):
"""Функция проверки критериев выхода."""
exit_criteria_met = (
critical_bugs_fixed == 100 and # 100% критических багов исправлено
test_coverage_percent >= 90 and # Покрытие >= 90%
all_tests_passed == True # Все тесты пройдены
)
return exit_criteria_met
# Использование
if is_testing_complete(100, 92, True):
print("Критерии завершения тестирования выполнены. Можно готовить релиз.")
else:
print("Тестирование необходимо продолжить.")
Критерии обычно определяются на этапе планирования тестирования (Test Plan) и согласуются со всеми заинтересованными сторонами.