用 AI 写测试用例:覆盖率从 60% 到 90%,我只花了 1 小时
📝 面试求职: 「面试试题小程序」 ,内容涵盖 测试基础、Linux操作系统、MySQL数据库、Web功能测试、接口测试、APPium移动端测试、Python知识、Selenium自动化测试相关、性能测试、性能测试、计算机网络知识、Jmeter、HR面试,命中率杠杠的。(大家刷起来…)
📝 职场经验干货:
上篇聊了用 Claude Code 做接口自动化测试,评论区最多的一条是:"测试用例怎么让 AI 写?写出来能用吗?"
今天来交作业。
这篇完整分享:怎么用 AI 辅助设计和编写测试用例,包括思路、Prompt 模板、真实案例,以及我踩过的坑。不是让 AI 随便生成一堆用例凑数,而是系统性地提升覆盖率。

先说结论:AI 写测试用例到底靠不靠谱?
直接上数据:
|
指标 |
纯手写 |
AI 辅助 |
|---|---|---|
|
一个模块的用例数量 |
30-50 个 |
80-120 个 |
|
编写时间 |
1-2 天 |
2-3 小时 |
|
场景覆盖率 |
60-70% |
85-95% |
|
边界值覆盖 |
容易遗漏 |
系统性覆盖 |
关键发现:AI 最大的优势不是写得快,而是想得全。
手写用例最大的问题是"盲区"——你总会漏掉一些场景。不是能力不够,而是人脑的工作记忆有限,很难同时兼顾正常流程、异常分支、边界值、权限组合、并发场景。
AI 没有这个限制。给它一个清晰的需求文档,它能系统性地枚举所有测试维度。
我的方法论:3 层测试用例生成
我把 AI 生成测试用例分成 3 层,每层解决不同的问题:

第 1 层:从需求文档生成功能用例
这是最基础的一层。把 PRD 或需求文档喂给 AI,让它提取每个功能点的正常场景用例。
Prompt 模板:
请阅读以下需求文档,为每个功能点生成测试用例: - 每个功能点至少 2 个正常场景(不同输入组合) - 格式:用例ID | 模块 | 用例标题 | 前置条件 | 测试步骤 | 预期结果 | 优先级 - 优先级参考:核心流程 P0,重要功能 P1,辅助功能 P2
这一层的准确率最高,基本 90% 以上不用改。因为正常场景就是需求的直接映射,AI 很擅长这种"翻译"工作。
第 2 层:从功能用例推导异常 + 边界用例
拿到第 1 层的功能用例后,让 AI 基于每个正常场景推导异常和边界情况。
Prompt 模板:
基于以下功能测试用例,为每个用例补充: - 2-3 个异常场景(参数缺失、类型错误、权限不足、资源不存在) - 2-3 个边界值场景(空值、最大值、最小值、特殊字符、超长输入) - 1-2 个业务规则冲突场景 - 标注哪些场景需要数据准备
这一层是 AI 最大的价值所在。手写的时候我们经常忽略边界值和异常分支,但 AI 会机械地枚举每一种可能。
第 3 层:交叉组合 + 场景覆盖分析
让 AI 检查前两层用例的覆盖度,找出遗漏。
Prompt 模板:
请分析以下测试用例集,检查覆盖度: 1. 是否覆盖了所有接口/页面/功能点? 2. 是否有遗漏的用户角色或权限组合? 3. 是否覆盖了关键的状态转换?(如:订单从待支付→已支付→已取消) 4. 列出建议补充的用例,标注原因
这一层相当于让 AI 做了一次 Review。实测下来,它通常能找出 5-10 个我们遗漏的场景。
真实案例:用户管理模块
拿一个常见的用户管理模块来演示完整流程。
需求简述
-
用户注册(邮箱 + 密码)
-
用户登录(邮箱 + 密码)
-
个人信息编辑(昵称、头像、手机号)
-
密码修改(旧密码 + 新密码)
-
账号注销
第 1 层结果(AI 生成的功能用例,节选)
|
ID |
模块 |
用例标题 |
优先级 |
|---|---|---|---|
|
TC-001 |
注册 |
使用有效邮箱和密码成功注册 |
P0 |
|
TC-002 |
注册 |
注册后收到验证邮件 |
P0 |
|
TC-003 |
登录 |
使用正确的邮箱密码成功登录 |
P0 |
|
TC-004 |
登录 |
登录后获得有效的访问令牌 |
P0 |
|
TC-005 |
信息编辑 |
修改昵称成功 |
P1 |
|
TC-006 |
信息编辑 |
上传头像成功 |
P1 |
|
TC-007 |
密码修改 |
使用正确旧密码修改成功 |
P0 |
|
TC-008 |
注销 |
确认注销后账号不可登录 |
P0 |
第 2 层结果(AI 补充的异常 + 边界用例,节选)
|
ID |
用例标题 |
类型 |
优先级 |
|---|---|---|---|
|
TC-101 |
注册:邮箱格式无效(缺少@) |
异常 |
P1 |
|
TC-102 |
注册:密码少于 8 位 |
边界 |
P1 |
|
TC-103 |
注册:密码 128 位(最大长度) |
边界 |
P2 |
|
TC-104 |
注册:已存在的邮箱重复注册 |
业务冲突 |
P0 |
|
TC-105 |
登录:密码错误 5 次后锁定 |
业务规则 |
P0 |
|
TC-106 |
登录:锁定后等待 30 分钟解锁 |
业务规则 |
P1 |
|
TC-107 |
信息编辑:昵称包含特殊字符 |
边界 |
P2 |
|
TC-108 |
信息编辑:上传超过 5MB 的头像 |
边界 |
P1 |
|
TC-109 |
密码修改:新密码与旧密码相同 |
业务冲突 |
P1 |
|
TC-110 |
注销:注销后尝试用原密码登录 |
业务规则 |
P0 |
第 3 层结果(AI 覆盖分析发现的遗漏)
AI 指出了 7 个我们遗漏的场景:
- 并发注册
:两个请求同时用同一邮箱注册
- Token 过期
:访问令牌过期后的行为
- 跨设备登录
:同一账号在多设备登录的策略
- 邮箱大小写
:test@mail.com 和 Test@mail.com 是否同一账号
- 密码修改后
:旧 Token 是否失效
- 注销中的订单
:账号有进行中的订单时能否注销
- SQL 注入
:邮箱/密码字段的安全测试
这 7 个场景里,有 3 个是 P0 级别的,手写的时候很可能就漏了。
5 个关键 Prompt 技巧
技巧 1:给 AI 明确的用例格式
不要让 AI 自由发挥格式。给它一个明确的模板,输出才能直接用。
格式要求: | 用例ID | 模块 | 标题 | 前置条件 | 步骤 | 预期结果 | 优先级 | 类型 | 类型包括:正常、异常、边界、安全、性能
技巧 2:分层生成,不要一次性
一次性让 AI 生成所有用例,质量会下降。分 3 层逐步细化,每一层基于上一层的输出。
技巧 3:提供业务上下文
AI 不知道你的业务规则。这些必须明确告诉它:
业务规则: - 密码必须 8-128 位,包含大小写和数字 - 同一邮箱 24 小时内最多注册 3 次 - 连续 5 次登录失败锁定 30 分钟 - 账号注销有 7 天冷静期
技巧 4:让 AI 标注数据依赖
对于需要特定数据准备的用例,请标注: - [需要已注册账号] - [需要已锁定账号] - [需要有进行中订单的账号] 这样方便后续写自动化脚本时准备测试数据。
技巧 5:用 AI 做交叉检查
写完用例后,换一个 Prompt 让 AI 做 Review:
请以资深测试工程师的角色,Review 以下测试用例集: - 是否有重复用例? - 是否有遗漏的关键场景? - 优先级标注是否合理? - 用例描述是否清晰可执行?
4 个常见的坑
坑 1:AI 生成的用例太泛,不可执行
症状:用例标题写"测试登录功能",没有具体步骤。
解决:在 Prompt 里强制要求写具体步骤和预期结果。加一句"每个用例必须包含至少 3 个具体操作步骤和 1 个可验证的预期结果"。
坑 2:缺少业务上下文,用例不贴合实际
症状:AI 生成的用例看起来正确,但和你的系统规则不符。
解决:在 Prompt 里提供完整的业务规则和约束条件。AI 不知道你们"密码最多 128 位"还是"最多 256 位"。
坑 3:用例之间有依赖但没标注
症状:TC-105 依赖 TC-003 创建的用户,但没有说明。
解决:让 AI 标注数据依赖和执行顺序。用"前置条件"字段明确写出。
坑 4:过度生成,P2 用例太多
症状:AI 生成了 200 个用例,其中 150 个是 P2。
解决:在 Prompt 里限制比例:"P0 占 20%,P1 占 40%,P2 占 40%。P0 和 P1 用例必须覆盖所有核心业务流程。"
从用例到自动化:无缝衔接
测试用例写完后,可以直接让 AI 基于用例生成自动化脚本。这就是上两篇文章(E2E 测试 + 接口测试)的内容了。
完整流程:
需求文档 → AI 生成测试用例(本篇) → AI 生成 E2E 脚本(#01) → AI 生成接口测试(#02) → 集成 CI/CD 自动执行
三篇文章串起来,就是一套完整的 AI 辅助测试工作流。
效率对比总结

|
环节 |
纯手写 |
AI 辅助 |
提升 |
|---|---|---|---|
|
功能用例设计 |
4-6 小时 |
30 分钟 |
8-12x |
|
异常 + 边界补充 |
2-4 小时 |
20 分钟 |
6-12x |
|
覆盖分析 Review |
1-2 小时 |
10 分钟 |
6-12x |
| 总计 | 1-2 天 | 1 小时 | 约 8x |
覆盖率从 60-70% 提升到 85-95%,时间反而缩短了 8 倍。
这不是因为 AI 比人聪明,而是因为:
-
AI 不会"想当然"地跳过边界场景
-
AI 可以系统性地枚举组合
-
AI 不会因为赶工而砍用例
最后: 下方这份完整的软件测试视频教程已经整理上传完成,需要的朋友们可以自行领取【保证100%免费】
AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。
更多推荐


所有评论(0)