用途
Test Writer 用于为已有代码生成全面的测试套件。它面向需要补充或完善测试覆盖的代码库,通过阅读源码理解被测对象,再按既定策略产出测试。
主要能力
该技能的处理流程如下:
- 阅读源代码,理解所有公开函数与方法。
- 识别项目中已使用的测试框架(如 pytest、unittest 等)。
- 遵循项目现有的测试模式与约定。
- 按覆盖策略编写测试。
覆盖策略包含四类:
- 正常路径:常规输入与预期输出;覆盖所有公开方法/函数。
- 边界情况:空输入(空字符串、空列表、None);边界值(0、-1、最大整数);单元素集合。
- 错误情况:无效输入类型;缺少必需参数;网络/IO 失败(mock 外部调用)。
- 集成:多个函数协同工作;跨调用的状态变化。
使用方式
资料未提供具体的安装命令、调用命令或配置步骤,暂未提供。从技能描述看,其使用方式为针对目标代码触发该技能,由其按上述流程生成测试。
编写准则
- 每个行为一个测试函数,而非每个方法一个。
- 使用描述性测试名称:test_<what><condition><expected>。
- 使用 fixture 处理共享初始化。
- mock 外部依赖(API、数据库、文件系统)。
- 断言具体值,而非仅判断真假。
- 同时测试返回值与副作用。
适用场景
适用于已有代码需要补充测试覆盖、统一测试风格、或按项目既有约定生成测试的场景,尤其适合需要覆盖正常路径、边界、错误与集成四类情况的代码库。
限制
资料未说明支持的编程语言范围、测试框架完整列表、生成测试的运行验证方式、收费与价格、平台支持等信息,暂未提供。