Сколько примерно автотестов было на этапе устоявшегося регресса
Что проверяют
Был ли у вас живой автоматизированный регресс и думаете ли вы о нём не количеством, а временем прогона, стабильностью и пользой. Цифра тут повод: интересно то, что вы скажете после неё.
Как отвечать
Назовите порядок величины и сразу разложите его по уровням, иначе число нечитаемо. Рабочая формулировка выглядит так: несколько сотен сценариев на уровне API и сервисов, заметно меньше на интерфейсе, а под ними отдельно живут юнит-тесты разработки. Дальше добавьте то, ради чего вопрос задан:
- сколько идёт полный прогон, что гоняется на каждый запрос на слияние, а что ночью;
- какая доля падений это дефекты, а какая шум нестабильных тестов;
- какую часть регрессионного чек-листа автотесты закрывают и что осталось руками;
- кто чинит красный прогон и за какое время.
Стоит объяснить и сам термин из вопроса. Устоявшийся регресс это состояние, когда набор перестал расти вширь и перешёл в поддержку: новые проверки приходят вместе с фичами, а старые чистятся от дублей и спускаются на уровень ниже, где дешевле. Если в этот момент набор продолжает пухнуть, это не зрелость, а накопление долга.
Сильное завершение ответа это конкретный пример: какой дефект автотесты поймали до релиза, какой пропустили и что вы после этого поменяли в наборе.
Где спотыкаются
Гордятся размером набора. Тысяча тестов на интерфейсе, которые идут шесть часов и падают через раз, слабее двухсот стабильных: их результату никто не верит, и красный прогон перестают смотреть.
Не знают своих чисел по времени и нестабильности. Вопрос про длительность полного прогона и про долю ложных падений задают следом почти всегда, и без ответа на него разговор про количество теряет смысл.
Приводят выдуманную точность и проценты покрытия кода. Покрытие кода про юнит-тесты разработчиков, а не про покрытие требований регрессом, и «восемьдесят процентов покрытия» в ответе про автотесты чаще всего означает, что цифру взяли из головы. Точное число не помните, честнее назвать порядок и структуру набора.