Как вы используете ИИ для тестов
Вопрос
Расскажите, как вы используете ИИ-ассистента при написании тестов и как понимаете, что тестам можно доверять.
Попробуйте сами
Ответьте вслух за 2 минуты, как на собесе. Потом сверьтесь с тезисами: что прозвучало, а что нет.
Показать ответ и разбор
Коротко
Что должно прозвучать в ответе
Критерий готовности фиксирую до реализации: требования и список случаев
Прошу сначала список краевых случаев, проверяю его сам
Читаю тесты как спецификацию, ищу тавтологии и слабые утверждения
Мокаю только внешний мир, логику выполняю по-настоящему
Проверяю, что тест падает: на заглушке или сломанном коде
Силу тестов смотрю мутациями, а не покрытием строк
Что могут спросить следом
- Что делаете, если ассистент чинит тест, меняя ожидание?
- Где ассистент в тестах вам реально экономит время?
Разбор
Образцовый ответ: «Ассистент у меня хорошо перечисляет краевые случаи и пишет табличные тесты, но решать, что правильно, должен я. Поэтому сначала фиксирую требования и прошу список случаев, читаю его за минуту и правлю. Потом генерирую тесты и читаю их как спецификацию: ищу ожидания, посчитанные самим кодом, toBeDefined вместо точных значений, моки бизнес-логики. Мокаю только сеть, базу и время. Обязательно убеждаюсь, что тест красный без реализации или если я сломаю строку. Покрытию не доверяю, его легко накрутить; для важных модулей запускаю мутационное тестирование. Если ассистент «починил» тест правкой ожидания, сверяюсь с требованиями, чаще всего сломан код».
Ответьте сами, а не прочитайте
В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.