单元测试Mock生成器
将以下提示词粘贴到你的 AI 对话框中:
请根据 https://skillhub.cn/install/skillhub.md,安装 @user_af163eaa/z-dev-unit-mock。
技能介绍
解决什么问题
补单元测试时,手写测试桩和Mock数据往往耗时费力:要逐行分析函数参数类型,模拟边界值,还要避免Mock数据与业务逻辑脱节。漏掉一个边界场景,测试就可能在CI流水线里“悄悄失败”。
核心能力与工作流程
这个技能的核心是输入函数签名即生成可运行的测试骨架与Mock数据。流程分为三步:
- 理解需求:解析函数签名(如
def calculate_total(items: List[CartItem], discount: float) -> float),识别参数类型和返回值结构; - 生成内容:产出测试代码骨架(含测试方法、断言占位)和符合类型约束的Mock数据(如
CartItem(price=99.0, count=2)); - 标注提示:在代码中添加关键行注释,说明参数含义、边界陷阱(如
discount为负数时的处理),并给出常见错误的替代方案(如用pytest.raises捕获异常)。
适用边界与注意点
- 生成的代码仅为参考,执行前需自行测试和安全审查;
- 不替代专业测试框架或官方测试系统,适合快速搭建测试原型;
- 不会执行未知脚本或写入密钥,避免在生产环境中直接使用生成结果。
使用场景
- 补写后端函数单元测试时,需要根据函数签名快速生成测试骨架与 Mock 数据,减少从零手写的时间。
- 为既有项目补齐测试覆盖率时,需要先得到可运行的测试桩和参数样例,再逐步替换为真实断言。
- 跨语言维护同一套测试用例时,需要说明目标语言后改写测试与 Mock,保持风格一致。
- 遇到生成代码跑不通时,需要贴出报错上下文,让技能据此修正测试片段而不是重写整个方案。
适合人员
- 后端工程师,需要在提交前补上函数级单元测试并复用同一套 Mock 数据。
- 测试工程师,需要在缺少历史用例的项目里先搭建测试桩再逐步细化断言。
- 全栈工程师,需要在多语言代码库中保持单元测试与 Mock 写法一致。
- 开发负责人,需要把可复制的测试片段沉淀为团队规范并审查边界处理。