Human-AI Collaboration for Scaling Agile Regression Testing: An Agentic-AI Teammate from Manual to Automated Testing

本文介绍了与哈肯(Hacon)合作开发的一种基于检索增强多智能体架构的AI协作方案,该方案能够直接从验证后的规范生成系统级测试脚本,显著提升了敏捷回归测试的自动化效率并减少了人工编写工作量,同时强调了清晰规范与人工审查在保障质量中的持续重要性。

Moustapha El Outmani, Manthan Venkataramana Shenoy, Ahmad Hatahet, Andreas Rausch, Tim Niklas Kniep, Thomas Raddatz, Benjamin King

发布于 Tue, 10 Ma
📖 1 分钟阅读☕ 轻松阅读

Each language version is independently generated for its own context, not a direct translation.

这篇论文讲述了一个关于**“人类与 AI 如何像搭档一样工作,来解决软件测试中‘写得多、做得少’的难题”**的故事。

想象一下,你是一家大型软件公司(比如西门子旗下的 Hacon 公司)的**“软件质检员”**。你们的工作是确保每次软件更新(比如公交车调度系统)都没有 Bug。

1. 遇到的麻烦:写不完的作业

在这个行业里,有一个巨大的痛点:

  • 需求变得太快:产品经理今天提了 100 个新功能,明天又改了 50 个。
  • 人工写脚本太慢:为了测试这些功能,工程师需要把“测试要求”(比如:点击按钮 A,应该弹出窗口 B)写成计算机能执行的“测试脚本”。
  • 结果:人类工程师写脚本的速度,远远赶不上需求变化的速度。就像老师布置了 100 道数学题,但学生只能做完 10 道,剩下的 90 道只能靠人眼去检查,既累又容易出错,还拖慢了发布速度。

2. 解决方案:请了一位"AI 实习生”

为了解决这个问题,研究团队开发了一个**“代理型 AI 队友”(Agentic-AI Teammate)。你可以把它想象成一位不知疲倦、手速极快的“初级实习生”**。

  • 它是怎么工作的?

    • 输入:人类工程师把写好的“测试要求文档”(就像作业题目)丢给 AI。
    • 思考:AI 会去翻阅公司过去所有的“优秀作业本”(历史测试脚本库),学习大家是怎么写的,然后模仿着写出一份初稿
    • 自测:AI 写完不仅自己跑一遍,还会生成一份详细的“体检报告”(哪里对了,哪里错了)。
    • 输出:它把写好的代码和报告放在那里,等着人类来检查。
  • 它的角色定位
    它不是来取代人类工程师的,而是来打杂的。它负责把最枯燥、最耗时的“从零开始写代码”的工作做完,把人类从“抄写员”变成“主编”。

3. 实际效果:像“初级工程师”的水平

研究团队让 5 位资深工程师去检查这位"AI 实习生”写的 46 份作业。结果非常有趣:

  • 惊喜:大约 30% 到 50% 的代码,人类工程师完全没改,直接就能用!这说明 AI 确实帮大忙了,省去了大量从零开始的时间。
  • 不足:虽然代码能跑,但**“味道”不对**。
    • 太死板:AI 像是一个只会死记硬背的学生。如果人类说“稍微灵活点”,AI 可能会理解成“把每个字都按字面意思执行”,导致代码虽然逻辑对,但不够优雅,或者不符合公司的“行规”(比如代码风格、命名习惯)。
    • 不懂潜台词:人类工程师之间有些“心照不宣”的默契(比如“这里通常用个快捷方式”),AI 不懂这些,写出来的代码就显得很生硬。
    • 幻觉:有时候 AI 会编造一些不存在的函数名(就像学生编造了一个没学过的公式)。

4. 核心启示:人类与 AI 的“共舞”

这篇论文最重要的结论不是"AI 多厉害”,而是**“人类和 AI 如何配合”**:

  1. 人类是“主编”,AI 是“撰稿人”
    AI 负责快速产出初稿,人类负责把关、润色和定稿。没有人类的审核,AI 写的东西不能直接上线。
  2. 指令要清晰
    如果人类给 AI 的“作业题目”写得模棱两可,AI 就会写得乱七八糟。人类需要学会更清晰、更规范地写需求,才能喂出更好的 AI。
  3. 互相适应(Co-adaptation)
    这是一个双向学习的过程。
    • AI 在学:通过人类的修改,它慢慢知道公司喜欢什么样的代码风格。
    • 人类在学:工程师也学会了如何更好地给 AI 下指令,以及如何更高效地审查 AI 的作品。

总结

这就好比**“人类工程师 + AI 实习生”**的组合:
以前,工程师要自己买菜、洗菜、切菜、炒菜(全流程),累得半死。
现在,AI 实习生把菜洗好、切好,甚至把菜炒到八分熟(生成初稿)。
工程师只需要最后尝一口,加点盐,调整一下火候(人工审核与微调),一道美味佳肴(高质量的自动化测试)就做好了。

最终目标:不是让 AI 完全取代人类,而是让人类从繁琐的重复劳动中解放出来,去处理更复杂、更有创造性的问题,同时让软件发布得更快、更稳。