用 AI 写测试与文档:开发者可立即执行的 7 个技巧
1. 先给 AI 足够的上下文,再让它写测试
AI 最常见的失误不是不会写断言,而是不理解业务约束。提交代码前,整理函数签名、调用方、输入输出示例、异常规则和相关类型定义,再一次性提供给模型。不要只说“给这个函数补测试”,应明确说明测试框架、运行环境和项目已有的测试习惯。例如要求它使用 Vitest、沿用现有 mock 工具,并避免访问真实数据库或网络。
- 附上目标文件及其直接依赖的关键片段。
- 说明哪些行为是稳定契约,哪些字段允许变化。
- 要求先列出测试场景,再输出可运行的测试代码。
2. 用“场景矩阵”补齐正常路径之外的风险
让 AI 直接生成测试,往往会得到几条只验证成功结果的用例。更有效的提示是:先为接口建立场景矩阵。按合法输入、空值、边界值、非法格式、权限不足、依赖超时、重复请求分类,让模型逐项说明预期状态码、响应体和副作用。随后让它只实现尚未覆盖的场景,避免生成重复测试。
对于金额、日期、分页和权限判断,这一步尤其重要。可以要求 AI 检查“0、负数、最大值、跨时区日期、最后一页、并发重复提交”等条件,并指出当前实现与测试之间可能不一致的地方。
3. 让 AI 先审查测试,再生成测试
成熟团队不应把 AI 当成测试代码打印机。先把现有测试和业务代码交给模型,要求它找出没有覆盖的分支、脆弱断言、过度 mock 和未验证的副作用。得到审查清单后,再选择高风险项生成补充用例。这样能减少“测试通过但没有真正验证行为”的假安全感。
- 要求识别条件分支、catch 分支和早返回逻辑。
- 检查测试是否只断言调用次数,却未断言结果或持久化状态。
- 让 AI 为每个建议标注风险等级和对应代码位置。
4. 把失败日志变成可复现的回归测试
CI 报错、线上异常和用户反馈是最有价值的测试素材。将脱敏后的请求参数、堆栈、错误响应和修复后的预期行为交给 AI,要求它生成最小复现用例。关键是明确:测试必须先在旧版本失败,再在修复版本通过。对于难以复现的问题,可让模型同时提出需要记录的日志字段,例如请求 ID、版本号、时区和上游响应码。
5. 文档不要从零写,要从代码差异中提炼
API 文档、README 和变更日志最容易过期。每次合并前,将 Git diff、路由定义、请求校验规则和示例响应提供给 AI,要求它输出“新增、修改、废弃、兼容性影响”四部分。再让它对照旧文档检查遗漏。这样生成的内容更接近真实变更,而不是泛泛介绍功能。
- 接口文档应包含请求字段、默认值、限制条件和错误码。
- README 应记录本地启动、环境变量和验证命令。
- 发布说明应明确是否需要迁移、重试或更新 SDK。
6. 强制 AI 区分事实、推断与待确认项
生成文档时,要求模型只依据提供的代码和配置写事实;无法确认的内容必须标为“待确认”,不能补造参数含义、性能指标或兼容性承诺。尤其是认证方式、数据保留、限流策略和价格信息,必须由人工复核。这个约束能显著降低 AI 文档看似完整、实际误导使用者的风险。
7. 用 59API 控制日常 AI 工程成本
测试与文档生成适合高频调用:代码评审前补边界用例、每个 PR 更新说明、CI 失败后分析日志,都会消耗大量模型请求。59API 提供按量付费的 Claude 与 GPT 模型接入,支持 Claude Opus、Sonnet、Haiku、Fable 及 GPT 模型,使用官方品质模型而不降级,并兼容 Claude Code、Codex 和任意 OpenAI SDK。将 API Base URL 配置为 https://api.59api.com 后,可按任务选择模型:复杂测试设计使用更强模型,批量整理注释或更新文档使用更经济的模型。
建议先从一个真实仓库开始:选择近期修复的缺陷,让 AI 生成回归测试和对应文档更新,再由人工审查后合并。需要稳定、低成本地把这套流程接入日常开发时,可以注册 59API,并通过其推荐返利机制进一步降低持续使用成本。
Prêt à commencer ?
Connectez Claude et GPT en quelques minutes aux prix les plus bas, sans bridage. Inscrivez-vous pour votre clé API.
Inscription gratuite