Test driven development
Skill Alex7develop/my-agent-skills/skills/test-driven-development
Писать код через цикл red-green-refactor — сначала падающий тест, потом минимальная реализация, потом рефакторинг. Используй при реализации новой логики, исправлении багов, изменении поведения кода. Триггерится на фразы "напиши функцию/фичу", "исправь баг", "добавь логику для X", "покрой тестами". Обязательно применяй при изменении поведения, даже если явно не попросили про тесты.From its SKILL.md
npx -y skills add Alex7develop/my-agent-skills --skill test-driven-developmentAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
One thing to look at
- 1 stars1 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
SKILL.md
4.2 KB, 941 tokens by cl100k_base, as published. Nobody here has run it
Test-Driven Development
Код без тестов, написанный "с ходу", кажется быстрее, но перекладывает проверку корректности на пользователя. Этот навык заставляет доказывать корректность тестом на каждом шаге.
Процесс: Red → Green → Refactor
- Red. Написать один тест, который описывает следующий кусок нужного поведения. Запустить и убедиться, что он падает по правильной причине (не из-за опечатки/синтаксической ошибки).
- Green. Написать МИНИМАЛЬНЫЙ код, чтобы тест прошёл. Не решать сразу всю задачу — только то, что покрыто текущим тестом.
- Refactor. Пока все тесты зелёные — убрать дублирование, улучшить имена, упростить структуру. Не менять поведение на этом шаге.
- Повторять цикл, пока критерии готовности (из спеки, если она есть) не покрыты тестами.
Что покрывать тестами (пирамида, примерный ориентир 80/15/5)
- 80% — unit-тесты. Быстрые, изолированные, для основной бизнес-логики.
- 15% — интеграционные. Стыки модулей, реальные (или близкие к реальным) зависимости.
- 5% — end-to-end. Только критичные пользовательские сценарии.
Принципы
- DAMP > DRY в тестах. Тест должен быть читаемым сам по себе даже с повторением, а не максимально сжатым через общие хелперы — тест, который нужно "распаковывать", чтобы понять, что он проверяет, вреден.
- Один тест — одна причина упасть. Если тест проверяет 5 вещей сразу, его провал не говорит, что именно сломалось.
- Тестировать поведение, а не реализацию. Рефакторинг внутренней структуры не должен ломать тесты, если внешнее поведение не изменилось.
- Баг-фикс начинается с теста, который воспроизводит баг. Сначала красный тест на баг, потом фикс, потом зелёный — это гарантия, что баг не вернётся незамеченным.
Чек-лист перед тем, как считать задачу закрытой
- Каждый критерий готовности из спеки покрыт хотя бы одним тестом
- Тесты падали (red) до реализации — не написаны постфактум "для галочки"
- Нет тестов, которые проверяют детали реализации вместо поведения
- Все тесты зелёные после финального рефакторинга
What ships with it
Read from the repository
Just SKILL.md. No reference files, no scripts.