手工测试用例生成
简介
- 在软件测试过程中,测试工程师需要根据需求设计测试用例。
-
传统方式通常包括:
- 阅读需求文档
- 分析业务流程
- 提取测试点
- 编写测试用例
-
这个过程通常:
- 工作量大
- 依赖经验
- 容易遗漏测试场景
因此可以利用 AI 智能体工具提升效率。
Opencode 工具介绍
-
Opencode 是一个用于构建 AI 智能体(Agent)应用的开发工具。
- 创建 AI Agent
- 定义任务目标
- 自动调用大模型
- 自动完成复杂任务
-
在测试领域可以用于:
- 自动需求分析
- 自动生成测试点
- 自动生成测试用例

AI 辅助测试用例生成流程
业务测试用例设计核心思路
-
在设计业务测试用例时,需要关注:
- 正常业务流程
- 异常业务流程
- 边界条件
- 权限控制
- 业务规则
Opencode 可以帮助测试工程师:自动生成这些测试场景。
使用 Opencode 生成测试用例的步骤
- 第一步:输入业务需求
- 第二步:Agent 解析需求
- 分析需求
- 提取测试点
- 第三步:生成测试用例,Agent 根据测试点自动生成:
- 用例名称
- 前置条件
- 测试步骤
- 预期结果
- 测试人员进行审核和优化。
示例
假设有一个需求:
功能:用户登录
需求描述:
用户输入用户名和密码登录系统,如果用户名和密码正确,则登录成功,否则提示登录失败。
登录业务流程
Opencode Agent 提示词
你是一名资深测试开发工程师,请根据以下需求先生成测试点,然后根据测试点生成完整测试用例。
要求:
1. 覆盖:
- 正常登录
- 用户名错误
- 密码错误
- 用户名为空
- 密码为空
- 边界情况(如超长输入)
2. 每条用例包含:
- 用例标题
- 前置条件
- 测试步骤
- 预期结果
3. 步骤必须清晰可执行
4. 输出为 Markdown 表格
5. 用例数量不少于8条
需求如下:
用户输入用户名和密码进行登录,
用户名和密码正确则登录成功,否则提示登录失败。
请以真实互联网公司测试用例标准输出,避免过于简单或遗漏关键场景。
如果测试点不完整,请先补充再生成测试用例。
OpenCode Agent 执行流程
Opencode 生成测试点
- 正常登录:用户名正确、密码正确,成功进入首页。
- 用户名错误:用户名不存在或不正确,登录失败,提示登录信息。
- 密码错误:用户名正确但密码错误,登录失败,提示登录信息。
- 用户名为空:用户名字段为空时的校验与反馈。
- 密码为空:密码字段为空时的校验与反馈。
- 用户名长度边界:达到最大允许长度的用户名能否正常登录(正向边界)。
- 用户名长度超出边界:超过最大长度的输入是否被前端/后端校验阻断或返回错误。
- 密码长度边界(极短):输入的密码过短,前端是否有提示并阻止提交(最小长度校验)。
- 前后空格处理:用户名/密码前后带空格,系统是否自动去除空格后再校验并登录。
- 用户名包含空格/特殊字符:如用户名内有空格或特殊字符,系统是否允许或拒绝该输入。
- 非 ASCII 用户名处理:用户名包含非 ASCII 字符(如中文/日文等)是否被允许,或是否返回格式错误提示。
- 连续错误导致账户锁定:多次错误登录尝试后账户锁定,后续尝试登录是否被阻止并显示锁定提示。
Opencode 生成测试用例
| 用例标题 | 前置条件 | 测试步骤 | 预期结果 |
|---|---|---|---|
| 1. 正常登录 - 用户名/密码均正确 | 账户存在且未锁定,网络通畅 | 1) 打开登录页 https://example.com/login 2) 输入用户名: jdoe 3) 输入密码: SecurePass123! 4) 点击登录 | 登录成功,跳转到首页,显示欢迎信息“欢迎,jdoe” |
| 2. 登录失败 - 用户名错误 | 同上,目标用户名不存在 | 1) 打开登录页 2) 输入用户名: nonexistent_user 3) 输入密码: SecurePass123! 4) 点击登录 | 登录失败,页面显示错误提示“用户名或密码错误”,账户未锁定 |
| 3. 登录失败 - 密码错误 | 同上,用户名存在但密码错误 | 1) 打开登录页 2) 输入用户名: jdoe 3) 输入密码: WrongPass! 4) 点击登录 | 登录失败,页面显示错误提示“用户名或密码错误”,账户未锁定 |
| 4. 登录失败 - 用户名为空 | 同上,用户名字段留空 | 1) 打开登录页 2) 输入用户名: (留空) 3) 输入密码: SecurePass123! 4) 点击登录 | 登录失败,提示“用户名不能为空”或等效信息,账户未锁定 |
| 5. 登录失败 - 密码为空 | 同上,密码字段留空 | 1) 打开登录页 2) 输入用户名: jdoe 3) 输入密码: (留空) 4) 点击登录 | 登录失败,提示“密码不能为空”或等效信息,账户未锁定 |
| 6. 登录成功 - 用户名达到最大长度边界 | 账户存在且未锁定,假设最大用户名长度为64字符 | 1) 打开登录页 2) 输入用户名: (64 字符的 a 循环字符串,如 "a" 重复64次) 3) 输入密码: SecurePass123! 4) 点击登录 | 登录成功,进入首页,显示欢迎信息,用户名长度在后端合法处理无误 |
| 7. 登录失败 - 用户名超过最大长度边界 | 账户存在且未锁定,超出最大长度 | 1) 打开登录页 2) 输入用户名: (65 字符的 a 循环字符串) 3) 输入密码: SecurePass123! 4) 点击登录 | 登录失败,提示“用户名长度超出允许范围”或等效错误,账户未锁定 |
| 8. 登录失败 - 密码长度过短(前端校验) | 账户存在且未锁定 | 1) 打开登录页 2) 输入用户名: jdoe 3) 输入密码: 123 4) 点击登录 | 前端提示“密码长度至少6位”,阻止提交或提示信息,未发送登录请求 |
| 9. 登录成功 - 前后空格自动修剪 | 账户存在且未锁定 | 1) 打开登录页 2) 输入用户名: “ jdoe ” 3) 输入密码: “ SecurePass123! ” 4) 点击登录 | 系统自动去除前后空格后校验并登录成功,进入首页,显示欢迎信息“欢迎,jdoe” |
| 10. 登录失败 - 用户名包含空格/特殊字符 | 账户存在但用户名格式不被允许 | 1) 打开登录页 2) 输入用户名: "john doe" 3) 输入密码: SecurePass123! 4) 点击登录 | 登录失败,提示“用户名格式不正确”或等效信息,账户未锁定 |
| 11. 登录失败 - 非 ASCII 用户名 | 账户存在但用户名为非 ASCII 字符 | 1) 打开登录页 2) 输入用户名: "测试用户" 3) 输入密码: SecurePass123! 4) 点击登录 | 登录失败,提示“用户名格式不正确”或等效信息,账户未锁定 |
| 12. 连续错误导致账户锁定 | 账户初始状态正常,未锁定 | 依次执行下列步骤共5次:重复 1) 打开登录页 2) 输入用户名: jdoe 3) 输入错误密码: WrongPass! 4) 点击登录 | 连续5次错误后账户被锁定;第6次尝试使用正确密码登录时,显示“账户已锁定”或等效信息 |
直接生成测试用例文件
请把测试用例直接生成一个 excel 文件

使用 Opencode 的优势
- 自动化程度高
- 测试设计效率高
- 减少重复劳动
- 提升测试覆盖率
总结
- 什么是业务测试用例
- 如何使用 Opencode 生成测试用例