Rails 测试进入自动驾驶:AI 代理自动编写测试,开发者无需动手
Mistral
Mistral AI 基于开源工具 Vibe 创建了一个自主代理,可以自动生成和改进 Rails 单体应用的 RSpec 测试。该代理读取源文件,创建或优化测试,使用 RuboCop 检查代码风格,通过 RSpec 和 SimpleCov 运行测试,并修复错误。在一项包含 275 个文件的实验中,覆盖率达到了 100%,所有测试通过,LLM-as-a-judge 平均得分为 0.74。
Mistral AI 基于其开源工具 Vibe 开发了一个用于测试 Rails 应用的自主智能体。该智能体读取 Rails 源文件(模型、序列化器、控制器、邮件程序、助手),并根据文件映射约定生成或改进 RSpec 测试。对于不同类型的文件,使用独立的技能文件。智能体运行 RuboCop 检查代码风格,并连同 RSpec 一起使用 SimpleCov 检查覆盖率和正确性——这是必需的最终步骤,因为如果不实际运行,测试可能看起来不错但由于语法错误而无法执行。AGENTS.md 中描述了分步指导,包括强制自查:智能体重新读取源文件,并检查所有公共方法是否已被测试。首次运行时,只有三分之一的测试通过,但智能体通过几次迭代修复了所有错误。在一个包含 275 个文件(其中一半没有测试)的实验中,智能体生成或改进了测试,实现了 100% 的测试通过率、零 RuboCop 违规、SimpleCov 100% 的覆盖率,以及 LLM-as-a-judge 方法下 0.74 的平均评分。表现最好的是模型(0.81),最差的是控制器(0.67)。
来源: Mistral AI —
原文
