最近公司在推进一个借助 AI 实现快速需求无人值守上线的项目,希望听听大家的想法或已有的落地经验。
快速需求:纯前端或纯后端的改动,需求较小,比如导出功能新增字段、按钮文案修改等。
无人值守上线:产品在禅道建立需求后,开发评估为快速需求,则通过 AI 自动编写代码并提测;提测后测试侧也借助 AI 完成测试,通过后自动提交上线通知。
目前我们设想的测试流程主要分为三块:
数据侧:AI 根据需求自动生成测试用例、测试脚本。
执行侧:AI 自动执行测试脚本,并输出测试报告(包含通过率、失败用例数及对应的失败用例详情)。
策略侧:针对失败用例设计重试机制(比如失败后自动重试、智能分析失败原因等)。
虽然框架看起来清晰,但真正落地时仍有很多细节需要推敲,例如:
问题 1. 目前遇到的最大困惑
框架看似清晰,但落到具体操作时,有一个核心环节卡住了:开发提测后,测试拿到了提测分支,如何将 “提测分支” 这个信号准确传递给 AI,并驱动后续的测试流程?
举个具体的例子来帮助理解:
假设现在有一个纯前端的快速需求——导出功能新增一个字段。产品在禅道创建需求后,开发完成了代码编写,提测分支为 feature/quick/export_add_age。按照设想,测试侧应该基于这个分支进行 AI 驱动的测试。
理想情况下,AI 可以通过需求 ID 从禅道拉取 PRD(Markdown 格式),然后自动生成测试用例和测试脚本。
接着,AI 需要调用类似 cursor 这样的工具,并借助集成的 playwright_mcp 来执行自动化测试。
但问题在于:无人值守意味着整个流程不能有人工介入。在实际环境中,我们无法手动打开 cursor 并输入指令 “请帮我执行这个测试脚本”。那么,在没有任何人工对话的情况下,如何自动触发 cursor 或类似的工具来执行测试呢?
问题 2. 测试脚本的生成如何适配不同的前端框架或后端接口?
问题 3. 执行侧如何保证测试环境隔离、数据准备自动化?
希望大家不吝赐教,无论是完整的方案思路,还是某一个小环节的实践,都欢迎分享!如果有已经在公司内部落地的案例,也希望能听到踩坑经验和优化建议。
提前感谢大家的回复!