SuperAPI AI 工具集

test-driven-development

编程与开发

查看项目

更新于 10-16 00:06

技能介绍

用途:为 Laravel 项目提供严格的测试驱动开发流程,适用于新功能、缺陷修复、重构和行为变更。核心原则是先写测试、看它失败、再写最小代码使其通过;未看到测试失败就无法确认测试是否验证了正确行为。

主要能力:给出红-绿-重构循环的具体做法。RED 阶段写一个最小测试,命名清晰、只验证一个行为、尽量使用真实代码而非 mock;随后必须运行 php artisan test --filter="测试名" 确认测试因功能缺失而失败。GREEN 阶段只写刚好通过测试的最简代码,不添加额外功能或过度设计。REFACTOR 阶段在测试保持通过的前提下消除重复、改进命名、抽取 Action、Service 或 helper。

使用方式:资料给出 Laravel 与 Pest 的示例,涵盖 Form Request 校验、Action 类、Policy/Gate 授权、Eloquent Scope、Job/Queue、Event Listener 等场景,并列出常用命令:php artisan test、--filter、--parallel、--coverage、--stop-on-failure、--dirty。Pest 特性包括 describe 分组、beforeEach 公共设置、dataset 参数化测试和 higher-order tests。

限制与要求:资料强调铁律——没有失败测试就不写生产代码;若先写了代码,必须删除并重新从测试开始,不得保留作参考或边写测试边改编。例外仅限一次性原型、生成代码(迁移、工厂)和配置文件,且需征得人类伙伴同意。完成前需核对清单:每个新方法都有测试、亲眼看过失败、失败原因符合预期、写了最小实现、全部测试通过且输出无错误警告、使用真实代码、覆盖边界与错误情况。资料未提供安装命令、收费或平台信息。