如何使用 AI 赋能自动化测试?
未标记
考查重点:测试生成与独立执行反馈。根据需求或接口文档生成候选用例与脚本,再用独立断言检查实际结果;由 AI 辅助归因修复,同时核对误报和业务覆盖
本题目录
参考答案
核心回答
AI 可以辅助测试的用例设计、脚本编写和失败归因,但测试预期和最终判定要有独立依据。一个可落地的闭环是:从需求和接口约定提取行为,生成候选用例;人工或规则核对关键预期;在受控环境执行测试;保留断言、日志和页面状态;再让 AI 根据失败证据定位原因、提出修改并重新验证。
前端可用 Playwright 执行真实浏览器操作,接口测试可用现有测试框架验证响应与数据库状态。AI 负责把业务条件转成脚本和分析候选,测试执行器负责运行和报告。生成的脚本要先检查数据准备、定位方式和断言,不能只因能运行就直接用于验收。
展开说明
先确定预期,再生成测试
例如测试“只有管理员可以删除文章”,用例至少包括管理员成功、普通用户被拒绝、未登录被拒绝,以及失败后文章仍存在。预期来自权限规则和接口约定,不能从当前实现反推;否则实现漏权限,AI 也可能把漏权限写成正确结果。
让 AI 给出“需求条目—输入与前置条件—操作—预期—用例”的对应关系,有助于发现遗漏。批量生成之后,优先核对边界、异常、状态变化和高影响行为,去掉仅换数据却重复覆盖同一条件的用例。
自动执行需要稳定环境与独立断言
准备可重置的测试账户和数据,记录代码版本、配置与命令。浏览器测试按用户操作检查页面,并核对请求或后端状态;接口返回成功不代表数据一定正确落库,页面出现提示也不代表权限真正由服务端执行。
可把构建、类型检查、静态分析和已有回归接进持续集成。截图有助于发现布局或遮挡,但不能替代业务断言;视觉比对也需要控制字体、视口和动态内容,避免把环境差异当成产品缺陷。
让失败证据驱动修复
给 AI 的材料应包括失败断言、期望与实际值、相关日志、截图或调用轨迹,以及本次差异。先判断产品缺陷、脚本错误、测试数据问题还是环境故障,再决定改代码还是改测试。
保存原始失败用例作为回归。修复后重新执行原用例与相邻行为;不能通过删除断言、延长所有等待或忽略失败使报告变绿。偶发失败应定位等待条件和共享状态,不无限重跑直到碰巧通过。
可能的追问
AI 生成的用例能直接拿来用吗?
可以先作为候选,低风险场景经过结构和预期检查即可纳入;涉及资金、权限或数据删除,需要业务规则和真实状态核验。特别检查模型是否使用不存在的接口、过期调用方式,或者只断言“没有抛异常”。
如何评价这套流程?
看真实缺陷发现情况、重要需求覆盖、误报、偶发失败率和维护成本,再看用例设计与分析耗时。测试数量增加,不一定代表覆盖了新的业务风险。
参考资料
- 国内:Snailclimb:Harness 是什么?Harness Engineering 六层架构与 Agent 工程实践:借鉴验证工具与反馈闭环的分工,说明AI不能仅以自然语言判断完成。
- 国内:adongwanai:Coding Agent:仓库级任务、工具与验证:采用测试、静态检查、差异审查和任务不变量组合的方式,形成多层验证。
- 国内:WeThinkIn:Agent Harness Engineering 高频考点:采用确定性规则、状态比较和模型语义分析的分工,解释独立预期的重要性。
- 国内:datawhalechina:Agent 应用开发实践踩坑与经验分享:借鉴工具成功、空结果和失败需要区分的经验,组织失败归因所需材料。
- 国外:Anthropic:Best practices for Claude Code:采用给Agent提供可执行检查及查看真实输出的实践,说明自动修复闭环。
- 国外:SWE-bench团队:SWE-bench Evaluation Guide:参考隔离环境应用补丁、执行测试并保存报告的方法,说明版本与执行结果必须对应。



