SuperAPI AI 工具集

rails-tdd-slices

测试与质量

查看项目

更新于 10-16 09:33

技能介绍

用途:当 Rails 任务最难的部分是决定 TDD 从哪里开始时使用本技能。核心原则是先选能证明行为、且最不依赖无关层级的最高价值边界。

主要能力:按变更类型给出首个规格建议。API 契约、参数、状态码、JSON 结构用 request spec(spec/requests/);聚合记录或值对象的领域规则用 model spec(spec/models/);跨协作者的多步编排用 service spec(spec/services/);入队/执行/重试/丢弃用 job spec(spec/jobs/);关键 Turbo/Stimulus 或浏览器可见流程用 system spec(spec/system/);引擎路由、生成器与宿主集成用 engine spec(spec/requests/ 或引擎路径);缺陷修复写复现 spec;层间不确定时先选更高边界。

使用方式:先命名要证明的行为,再定位首次可观察该行为的边界,选最小而有力的切片,按 Rails 惯例给出规格路径,只写一个失败示例,运行并确认失败是因为行为缺失而非环境损坏。随后可衔接 rspec-best-practices、rspec-service-testing、rails-engine-testing 等技能。

限制:不要仅因方便选首个 spec;若真实风险在请求、作业、引擎或持久化连接处,不要先写低层单元测试;避免未运行就写多种规格、默认全部用 request spec、过早写 system spec,以及首个 spec 需要大量工厂设置的情况。写完后应暂停并请人评审测试设计,确认覆盖行为、边界与失败原因正确后再实现。