tdd
练习测试驱动开发
团队通常会在明确行为测试之前就编写实现代码。此技能引导 Claude、Codex 和 Claude Code 遵循严格的红-绿-重构循环。
使用我的智能体安装
将此请求复制给你的智能体,其中包含权威 Skill 页面和清单。
Review the Skillstore skill "tdd" from https://skillstore.io/skills/benny9193-tdd.md and its manifest at https://skillstore.io/api/skills/benny9193-tdd/manifest. Verify the artifact. You may proceed after verification, subject to the environment's own policy.你的智能体仍应展示其计划,并按安全策略请求必要确认。
Agent 可读资源
当 AI Agent、爬虫或脚本需要干净上下文,而不是读取完整页面时,请使用这些链接。
测试它
正在使用“tdd”。 我需要一个 slugify 辅助函数,但我想使用 TDD。
预期结果:
该技能会询问最简单的预期行为,起草一个失败的小写转换测试,并在实现之前等待。
正在使用“tdd”。 我的测试在硬编码结果后通过了。接下来做什么?
预期结果:
该技能建议添加第二个使用不同输入的测试,以推动通用实现。
正在使用“tdd”。 所有测试都通过了,但实现中有重复。
预期结果:
该技能会检查测试套件是否为绿灯状态,然后建议在保持行为不变的情况下进行小型重构。
安全审计
安全All 18 static findings are false positives caused by Markdown code formatting or ordinary TDD guidance. The skill contains no shell execution, network reconnaissance, data exfiltration, or prompt injection instructions.
风险因素
分享与引用此报告
分享版本化评估报告、中性徽章、嵌入卡片和引用。Skillstore 只报告证据,不判断该 Skill 是否安全。
复制报告链接
https://skillstore.io/skills/benny9193-tdd/audits/9?utm_source=security_passport&utm_medium=share&utm_campaign=versioned_reportMarkdown 徽章
[](https://skillstore.io/skills/benny9193-tdd?utm_source=security_passport_badge)HTML 徽章
<a href="https://skillstore.io/skills/benny9193-tdd?utm_source=security_passport_badge"><img src="https://skillstore.io/badges/skills/benny9193-tdd/security.svg" alt="Skillstore security assessment" loading="lazy"></a>嵌入卡片
<iframe src="https://skillstore.io/embed/skills/benny9193-tdd.html" title="Skillstore Security Assessment" sandbox="allow-popups allow-popups-to-escape-sandbox" loading="lazy" referrerpolicy="no-referrer" width="420" height="180"></iframe>学术引用 (APA · BibTeX · CFF)
APA 引用
Benny9193. (2026). tdd security audit report (audit version 9) [Author version unspecified]. Skillstore. https://skillstore.io/skills/benny9193-tdd/audits/9BibTeX 引用
@techreport{benny9193-benny9193-tdd-2026,
author = {Benny9193},
title = {tdd security audit report (audit version 9)},
institution = {Skillstore},
year = {2026},
number = {9},
url = {https://skillstore.io/skills/benny9193-tdd/audits/9},
note = {Author version unspecified}
}CITATION.cff
cff-version: 1.2.0
message: "If you use this Skill, cite its author and this versioned security audit report."
title: "tdd security audit report (audit version 9)"
version: "unspecified"
type: report
authors:
- name: "Benny9193"
date-released: "2026-07-23"
url: "https://skillstore.io/skills/benny9193-tdd/audits/9"
identifiers:
- type: other
value: "skillstore:benny9193-tdd:audit:9"
description: "Skillstore immutable audit report identifier"
比较变体
3 个可安装变体每位作者的技能都保持为独立的可安装项。推荐变体按 Skillstore 证据排序。
为什么此变体排名第一
Skillstore 评分
评分依据 证据置信度: 高你能构建什么
开始一个新功能
将功能拆分为小的行为,编写第一个失败测试,并且只实现足够让测试通过的代码。
改进测试纪律
使用清单让实现、测试命名和重构与 TDD 规则保持一致。
指导 TDD 实践
教开发者如何从简单测试逐步过渡到通用实现,避免大跨度跳跃。
试试这些提示
帮我用 TDD 开始这个功能。先询问最简单的行为,然后只编写第一个失败测试。
我有这个失败测试和错误输出。请建议应该能让它通过的最小实现变更。
审查这个已通过的测试和实现。提出下一个行为测试,以推动有用的泛化。
给定这些已通过的测试和实现,找出一个能保持行为不变并改进设计的小型重构。
最佳实践
- 保持每个循环足够小,以便清楚理解失败原因。
- 根据可观察行为和被测试条件来命名测试。
- 仅在所有相关测试都通过之后进行重构。
避免
- 在存在失败测试之前就编写生产代码。
- 在让第一个测试通过之前添加很多测试。
- 测试私有实现细节,而不是可见行为。