Поменял мнение по поводу AI и тестов
Кароч, я поменял мнение по поводу генерации тестов в LLM. Теперь считаю, что делать это можно и нужно.
Мой старый посыл был в том, что когда кожаный мешок пишет тесты, он лучше думает о коде. Но ведь ничего не мешает подумать о коде на этапе планирования. Если сделать это хорошо — будете буквально попросить модель «Write tests: 1. for XXX; 2. for YYY; 3. All tests you suggest». То есть описывать важные для бизнеса тест-кейсы, предоставив модели тестирование скучных крудов.
Увы, LLM-тесты, по крайней мере в pytest, всё ещё не сравнятся с человеческими по лакончиности и читаемости. Но это не так уж и важно — если загнать в AGENTS.md достаточное количество правил и примеров, то тесты получаются вполне приемлемыми. А чуть-чуть поломанная читаемость — вполне адекватная плата за скорость: в конце-концов чинить эти тесты тоже будет LLM, а не человек.
Ну и ревью, конечно, никто не отменял — каждый сгенерированный тест нужно прочитать вручную перед мёрджем, как и весь другой код.
Post #1349
17.8K
FEDOR BORSHEV Не писать тесты с LLM Со всех сторон слышу, как люди генерят тесты при помощи LLM. Чуваки, так делать нельзя! Это видимость тестирования, прямо как assertion-free testing. Когда кожаный мешок пишет тесты (не важно до кода или после), он работает не над ними…