技能 test-driven-development
🧪

test-driven-development

安全 🌐 网络访问📁 文件系统访问⚙️ 外部命令

Примените разработку через тестирование к вашему коду

也可从以下获取: Cycleaddict,CodingCossack,obra,DMJGilbert,ZhanlinCui,davila7,Cygnusfear,sickn33

Написание тестов после кода ничего не доказывает. Этот навык обеспечивает дисциплину TDD, заставляя вас сначала писать падающие тесты, гарантируя, что ваши тесты действительно проверяют поведение и обнаруживают ошибки до того, как они попадут в продакшен.

支持: Claude Codex Code(CC)
📊 69 充足
1

下载技能 ZIP

2

在 Claude 中上传

前往 设置 → 功能 → 技能 → 上传技能

3

开启并开始使用

测试它

正在使用“test-driven-development”。 Help me implement a password validator using TDD

预期结果:

  • Сначала напишите падающий тест: test('отклоняет пароли короче 8 символов', () => { expect(validatePassword('abc123')).toBe(false); })
  • Наблюдайте за его падением - подтверждает, что тест работает и функция отсутствует
  • Напишите минимальный код: function validatePassword(pwd) { return pwd.length >= 8; }
  • Наблюдайте за прохождением - подтверждает, что реализация работает
  • Следующий тест: test('требует как минимум одну цифру', () => { expect(validatePassword('longpassword')).toBe(false); })
  • Продолжайте цикл до выполнения всех требований

安全审计

安全
v5 • 1/17/2026

This is a documentation-only skill containing Test-Driven Development guidelines. No executable code, network calls, file system access, or external commands. Pure educational content. All 53 static findings are false positives from the scanner misinterpreting markdown code block delimiters and JSON metadata as executable code.

2
已扫描文件
365
分析行数
3
发现项
5
审计总数
审计者: claude 查看审计历史 →

质量评分

38
架构
100
可维护性
83
内容
20
社区
100
安全
91
规范符合性

你能构建什么

Реализуйте новые функции с уверенностью

Используйте TDD для систематического создания функций, гарантируя, что каждый компонент работает правильно и может быть безопасно рефакторирован позже.

Исправляйте ошибки без создания новых

Напишите падающий тест, который воспроизводит ошибку, исправьте её минимальным кодом и предотвратите регрессии с помощью всестороннего тестового покрытия.

Обеспечьте стандарты качества кода

Проверьте, что весь новый код следует практикам TDD и имеет правильное тестовое покрытие перед одобрением pull requests.

试试这些提示

Начните TDD для новой функции
Мне нужно реализовать эндпоинт аутентификации пользователя. Используя TDD, помогите мне написать первый падающий тест, который проверяет корректный формат email, прежде чем я напишу какой-либо код реализации.
Примените TDD к исправлению ошибки
В нашем расчёте скидки есть ошибка: скидка 0% вызывает ошибку. Помогите мне сначала написать падающий тест, затем реализовать минимальное исправление.
Рефакторинг с защитной сеткой TDD
Я хочу рефакторить эту запутанную функцию на более мелкие. Сначала помогите мне написать тесты для текущего поведения, затем проведите меня через рефакторинг шаг за шагом.
Проверка соответствия TDD
Проверьте этот код и тесты. Следовали ли они TDD? Проверьте, были ли тесты написаны первыми, видели ли они, как тесты падают, и является ли реализация минимальной.

最佳实践

  • Всегда наблюдайте за падением теста сначала - немедленное прохождение ничего не доказывает
  • Пишите простейший код, возможный для прохождения - никаких дополнительных функций или рефакторинга
  • Удаляйте любой код, написанный без падающего теста - без исключений
  • Используйте реальный код в тестах, избегайте моков, если абсолютно необходимо

避免

  • Написание реализации до тестов - нарушает основной принцип
  • Сохранение 'референс' кода при написании тестов - вы адаптируете его вместо того, чтобы начинать с чистого листа
  • Тестирование после реализации - вы теряете подтверждение того, что тесты действительно работают
  • Добавление функций сверх того, что требует тест - нарушает правило минимальной реализации

常见问题

Совместимо ли это со всеми тестовыми фреймворками?
Да, TDD не зависит от фреймворка. Работает с Jest, Mocha, PyTest, NUnit или любой другой библиотекой тестирования.
Что если я уже написал код?
Удалите его и начните заново с TDD. Сохранение кода означает, что вы тестируете после, а не тест-драйвите.
Могу ли я интегрировать это с существующими проектами?
Да, применяйте TDD к новым функциям и исправлениям ошибок. Постепенно добавляйте тесты для существующего кода при его изменении.
Безопасны ли мои данные при использовании этого навыка?
Этот навык только предоставляет рекомендации - выполнение кода, доступ к файлам или сбор данных не происходит.
Тест проходит сразу, что мне делать?
Ваш тест неправильный - он тестирует не то, что нужно. Исправьте тест, чтобы он правильно падал перед реализацией.
Чем это отличается от написания тестов после?
Тесты-после проверяют то, что вы построили. Тесты-спе��ва определяют, что вы должны построить, выявляя проблемы проектирования на раннем этапе.