ai 编码业务功能验收的正确流程

在 AI 实现自动化编程时,任务编写完成后,工程质量检查( lint 、类型检查、单元测试)都正常通过。但是在业务功能验收时,存在业务功能验收通过了,但是实际功能并没有实现的问题,例如:数据根本就没有正确显示。请教各位大神,如何更好的做 AI 自动化的业务功能验收。

需求文档模版:

# 需求文档
## 介绍
需求描述
## 需求
### 需求 REQ-001 - 用户登录
用户故事:用户故事内容
#### 验收标准
- id: REQ-001-AC-001
ears: 采用 EARS 描述的子句 While <可选前置条件>, when <可选触发器>, the <系统名称> shall <系统响应>,
- id: REQ-001-AC-002
ears: 采用 EARS 描述的子句 While <可选前置条件>, when <可选触发器>, the <系统名称> shall <系统响应>,

任务 task 模版:

# 实施计划
执行时需严格遵循 `docs/spec/requirements.md` 中对应需求和验收标准。每项任务通过引用相关需求编号。
## TASK-001 用户登录功能  - [ ]
- 关联需求:
- REQ-001
- 关联验收:
- REQ-001-AC-001
- REQ-001-AC-002
- REQ-001-AC-003
### 实施内容
1. 创建登录表单
2. 实现登录 API 调用
3. 处理 loading 状态
4. 处理错误提示
5. 登录成功后跳转 dashboard
### 测试要求
- 单元测试:
- 表单校验
- 登录成功
- 登录失败
- E2E 测试:
- 用户可完成登录流程
- 错误密码显示提示
- loading 状态防止重复提交
### 规范对齐:constitution.md 「 UI/UX 一致性」「工程化规范」; design.md 「项目结构」「核心模块设计」「国际化」

没用过别瞎搞

是不是因为AI只看了测试通过,没真点开页面看啊?我不太确定…

又来这种帖子了,AI写代码,人擦屁股,老传统了。

我们流程是:AI生成代码并自测 → 流水线跑基础检查 → 自动部署到预览环境 → 脚本用无头浏览器打开页面,截个图,OCR识别关键文字,跟需求文档里的关键词做比对。虽然糙但能发现“页面一片白”或者“显示Lorem ipsum”这种问题。

楼主你提到的“数据根本没正确显示”太典型了。我们之前让AI做一个用户列表,结果单元测试全绿,E2E测试也显示“元素存在”。一上线用户炸了,列表里全是“undefined undefined”。后来发现是AI mock了数据,测试用的也是mock,但实际接口字段名变了。现在我们强制在验收阶段加一个“真实数据快照对比”,用一份真实的、小规模的、脱敏的生产数据副本作为金标准去跑一遍,虽然麻烦点,但避了不少坑。

你文档模版里那个EARS描述子句,具体是怎么转化成自动化检查点的?比如“系统应显示用户姓名”,是检查元素存在,还是精准匹配文本内容?这块没太看明白。

我们这边也遇到过类似情况。AI生成的表格,测试都通过,因为只测了表格组件本身渲染了。但业务上要求“默认按创建时间降序排序”,这个逻辑AI没实现,测试也没覆盖。后来我们在验收标准里加上了“数据状态断言”,比如用测试脚本去获取第一行数据的时间戳,确保它比第二行的新。光检查“有数据”不够,得检查“数据是对的”。

截图加OCR对比关键词这思路挺巧,省了人工

OCR这套挺糙但能用,关键词覆盖不全的时候还是漏

OCR这思路挺巧,但页面JS渲染慢得加等待

AI写完测试跑过不等于业务对,这环节得补

AI能写代码不能写需求,验收永远是人来

AI只看测试通过不看实际效果是真问题,加一步功能截图回归