| name | test |
| description | 当用户想写测试、生成测试用例、给代码加单元测试时使用 — 自动生成测试,覆盖正常路径和边界情况 |
生成测试
为指定的代码自动生成测试用例,让用户不用自己写测试。
步骤
1. 确定测试目标
如果用户指定了函数或文件,直接读取。
如果没有指定,问:
你想给哪个函数或文件生成测试?
2. 分析代码
读取目标代码,分析:
- 函数的输入参数和返回值
- 正常执行路径
- 可能的边界情况(空值、空列表、极大/极小值、类型错误)
- 错误处理路径
- 外部依赖(数据库、API、文件系统)
3. 检查项目的测试习惯
查看项目中已有的测试文件,了解:
- 用的什么测试框架(pytest、jest、go test 等)
- 测试文件的命名和存放位置
- 已有的测试风格和模式(比如是否用 fixture、mock)
如果项目没有已有测试,根据技术栈选择最常用的测试框架。
4. 生成测试用例
按以下优先级生成测试:
- 正常路径 — 最基本的输入,验证核心功能正确
- 边界情况 — 空值、零值、极端值、特殊字符
- 错误处理 — 非法输入、异常情况是否正确处理
规则:
- 每个测试用例只测试一个行为,命名要清晰说明测试什么
- 测试数据要具体、有意义,不要用 "test"、"foo" 这类占位符
- 如果有外部依赖,用 mock 隔离
- 与项目已有的测试风格保持一致
5. 确认并写入
展示生成的测试代码,告诉用户:
生成了 N 个测试用例,覆盖了 xxx。要我写入到测试文件吗?
用户确认后,写入对应的测试文件。然后运行测试确认全部通过。