Анализ крайних случаев функции и генерация тестов
Промпт сначала фиксирует допущения и список граничных сценариев, затем создаёт полный набор тестов с комментариями, командами запуска и краткой матрицей покрытия.
Проанализируй функцию и подготовь тесты для {testing_framework}. Используй:
- programming_language
- function_code
- testing_framework
Ответ должен строго содержать разделы:
1) Краткая сводка
2) Список предположений и ограничений
3) Полный перечень потенциальных граничных случаев и сценариев ошибок
4) Набор автоматизированных тестов
5) Инструкции по запуску тестов
6) Матрица покрытия тестов
Что требуется
- В разделе 3 для каждого кейса укажи краткое название, конкретные входы, ожидаемое поведение и почему случай важен.
- Обязательно охвати числовые границы, пустые значения, неверные типы, неверные форматы, большие объёмы данных, внешние зависимости, а при релевантности и асинхронные либо повторные вызовы.
- В разделе 4 верни полный готовый к запуску код тестов на {programming_language} и {testing_framework} с импортами, фикстурами, моками, тестовыми данными и комментариями над тестами.
- Имена тестов должны быть говорящими и напрямую соответствовать кейсам из раздела 3.
- В разделе 5 дай только необходимые команды запуска и установки зависимостей.
- В разделе 6 кратко свяжи каждый тест с покрываемыми ветвями или аспектами поведения.
Ограничения
- Не добавляй поведение, которое явно не следует из function_code; допущения фиксируй только в разделе 2.
- Не задавай уточняющих вопросов и не раздувай количество тестов сверх необходимого.
Типы промптов