SuperAPI AI 工具集

test-writing

测试与质量

查看项目

更新于 10-16 01:13

技能介绍

用途:指导编写和修复测试,使测试验证可观察行为而非实现细节,并在写测试、审查测试、选择测试范围与打桩策略、修复脆弱测试时使用。

主要能力与主张:通过仍然封闭(hermetic)且搭建成本低的最宽边界来测试行为;按改动规模决定验证强度,并完成项目要求的检查;不为追求某测试风格而扩大生产代码范围。资料列举了需纠正的习惯:照刚写的代码写测试、把实际输出粘贴为预期值、按源码结构镜像测试、默认打桩、改测试而非改代码、为求通过而改动环境、在共享环境里试错调试、盲接快照、为凑量生成重复测试、掩盖失败、测试框架本身。

使用方式:先判断复杂度所在——进程内(算法、领域规则、解析器)侧重领域层深测,边界(服务、胶水、编排)从边缘用真实夹具测契约。随后按情形选择:无意义的胶水/getter 可跳过;纯逻辑少依赖走公共 API,优先属性或穷举测试;编排、真实 I/O、控制器/数据库/文件系统行为做集成测试;复杂且重依赖则抽取领域逻辑单独测试;仅部署、接线、真实第三方行为或负载下基础设施才需要部署环境,优先临时环境。边界扩大到搭建昂贵或不再封闭时停下,IO 不是唯一标准。

规则与限制:常规测试不依赖共享外部服务;失败必须能定位缺陷;一个测试对应一个领域专家可识别的场景,按行为命名;优先基于输出的测试,其次基于状态,通信打桩只用于兼容性敏感的外部调用;未管理依赖优先用假实现,本地真实数据库/文件系统尽量保留;时间相关行为用注入时钟或项目既有假计时器;遵循 Arrange-Act-Assert,Act 仅一个操作;设置范围限于需要的测试。红旗包括:预期值可追溯到实际输出、测试重复生产逻辑、因检查内部结构而在重构时失败、需要多个服务或共享环境、把数据库/文件系统行为打桩掉、无界休眠或抑制失败、测试与所覆盖代码在同一提交中改动且无说明。质量标尺是:行为破坏时失败、重构时保持绿色、失败时指向一个明显原因,抗重构最重要。

其他:资料提到 REFERENCE.md 涉及测试规模、金字塔/蜂窝选择、check() 接缝、可观测点、expect 测试、属性与模糊测试、humble-object 重构与数据库模式,但未提供其内容。安装命令、收费、平台与价格等信息暂未提供。