Skip to content

手工测试用例生成


简介

  • 在软件测试过程中,测试工程师需要根据需求设计测试用例。
  • 传统方式通常包括:

    • 阅读需求文档
    • 分析业务流程
    • 提取测试点
    • 编写测试用例
  • 这个过程通常:

    • 工作量大
    • 依赖经验
    • 容易遗漏测试场景

因此可以利用 AI 智能体工具提升效率


Opencode 工具介绍

  • Opencode 是一个用于构建 AI 智能体(Agent)应用的开发工具。

    • 创建 AI Agent
    • 定义任务目标
    • 自动调用大模型
    • 自动完成复杂任务
  • 在测试领域可以用于:

    • 自动需求分析
    • 自动生成测试点
    • 自动生成测试用例


AI 辅助测试用例生成流程

uml diagram


业务测试用例设计核心思路

  • 在设计业务测试用例时,需要关注:

    1. 正常业务流程
    2. 异常业务流程
    3. 边界条件
    4. 权限控制
    5. 业务规则

Opencode 可以帮助测试工程师:自动生成这些测试场景。


使用 Opencode 生成测试用例的步骤

  1. 第一步:输入业务需求
  2. 第二步:Agent 解析需求
    • 分析需求
    • 提取测试点
  3. 第三步:生成测试用例,Agent 根据测试点自动生成:
    • 用例名称
    • 前置条件
    • 测试步骤
    • 预期结果
  4. 测试人员进行审核和优化。

示例

假设有一个需求:

功能:用户登录

需求描述:

用户输入用户名和密码登录系统,如果用户名和密码正确,则登录成功,否则提示登录失败。

登录业务流程

uml diagram


Opencode Agent 提示词

你是一名资深测试开发工程师,请根据以下需求先生成测试点,然后根据测试点生成完整测试用例。

要求:
1. 覆盖:
   - 正常登录
   - 用户名错误
   - 密码错误
   - 用户名为空
   - 密码为空
   - 边界情况(如超长输入)
2. 每条用例包含:
   - 用例标题
   - 前置条件
   - 测试步骤
   - 预期结果
3. 步骤必须清晰可执行
4. 输出为 Markdown 表格
5. 用例数量不少于8条

需求如下:
用户输入用户名和密码进行登录,
用户名和密码正确则登录成功,否则提示登录失败。

请以真实互联网公司测试用例标准输出,避免过于简单或遗漏关键场景。

如果测试点不完整,请先补充再生成测试用例。

OpenCode Agent 执行流程

uml diagram


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 生成测试用例