Rails 测试自动驾驶:构建一个写开发者不愿写的测试的
来自 Mistral AI · 期号 2026-03-11
摘要
大多数大型 Rails 单体应用里,团队优先写新功能而不是测试。时间一长,越来越多代码未经测试,团队花在调试上的时间越来越多。 Mistral 做了一个自主 agent 来填补这个缺口。它读取 Rails 源文件,生成或改进 RSpec 测试,对照风格规则和覆盖率目标做验证,然后跑在 CI/CD 流水线里,全程不需要人工介入。为了在大型代码库上工作,它并行运行:多个实例同时处理不同文件。 agent 基于 Mistral 的开源编码助手 Vibe 构建。核心工作集中在三个杠杆上:仓库级上下文、专门技能和自定义工具。它通过仓库根目录的 AGENTS.md 文件获得逐步执行计划,包括读取源文件、检查文档、定位已有测试、按文件类型选择技能、查找现有模式和工厂、生成测试、用 Rubocop 和 SimpleCov 验证。 agent 处理五种文件类型(模型、序列化器、控制器、邮件发送器、辅助模块),每种都有不同的测试指令。它还管理 RSpec 的共享上下文(工厂和固定数据),避免重复代码。