Тестовый режим. Сайт работает в тестовом режиме: разделы наполняются, цены и статусы могут быть неточными. Сообщить об ошибке
РазработчикуСредний уровень

Как написать юнит-тесты с помощью ИИ: от требований до CI

Опишем требования, получим тест-кейсы и код тестов, запустим и разберём падения, проверим качество тестов и встроим их в автоматический запуск.

30 минут 5 шагов DeepSeek, GigaCode, Cursor Обновлено 20 октября 2026

Что получится

  • Тест-кейсы по требованиям
  • Код тестов, которые действительно проверяют функцию
  • Тесты в автоматическом запуске

Что понадобится

  • 1Код и требования к функции
  • 2Аккаунт DeepSeek или GigaCode
Тесты от нейросети тоже нужно проверять. Она может написать тест, который подстроен под ошибку в коде и всегда проходит. Не отправляйте в публичные сервисы закрытый код компании без разрешения и уберите из него ключи и пароли.
1

Опишите, что должна делать функция

Тесты проверяют требования, а не код. Сначала запишите, что функция должна делать, какие у неё входные данные и что считается ошибкой.

Промпт
Требования к функции расчёта скидки: [описание].
Составь тест-кейсы таблицей: позитивные, негативные, граничные значения. Отметь неясные места в требованиях.
2

Получите код тестов

Промпт
Вот функция на Python: [код]. Вот тест-кейсы: [таблица].
Напиши тесты на pytest: по одному тесту на кейс, понятные названия, параметризация для похожих случаев. Код функции не меняй.
Для одной функции подойдёт промпт «Тесты к функции».
3

Запустите и разберите падения

Запустите тесты. Если тест упал, выясните, где ошибка — в коде или в тесте. Не просите нейросеть «исправить тест, чтобы прошёл», пока не поняли причину.

Терминал pytest -q ИИ: 1 failed: test_discount_over_100_percent — функция вернула отрицательную цену вместо ошибки
4

Проверьте качество тестов

Промпт
Посмотри на тесты: какие сценарии не покрыты? Есть ли тесты, которые пройдут при любой реализации? Что стоит проверить дополнительно?

Хорошая проверка — намеренно сломать функцию: если тесты не упали, они ничего не проверяют.

5

Встройте в работу

Добавьте тесты в репозиторий и в автоматический запуск при каждом изменении (CI). В редакторе удобно генерировать тесты через GigaCode или Cursor прямо рядом с кодом.

Типичные ошибки

Ошибка

Тесты написаны по коду, а не по требованиям.

Как правильно

Сначала требования и кейсы.

Ошибка

Попросили «исправить тест, чтобы прошёл».

Как правильно

Сначала поймите, где ошибка.

Ошибка

Тесты проходят при сломанной функции.

Как правильно

Проверьте, сломав код намеренно.

Ошибка

Вставили код с ключами.

Как правильно

Уберите секреты перед отправкой.

Чек-лист тестов

Урок был полезен?