什么是测试用例?
测试用例是为验证软件应用程序的特定特性或功能而执行的一组操作。测试用例内容测试用例包括特定的变量或条件,使用这些变量或条件,测试工程师可以将预期结果和实际结果进行比较,以确定软件产品是否按照客户的要求运行。
测试场景与测试用例
测试场景相当模糊,涵盖了广泛的可能性。测试都是关于非常具体的。
对于测试场景:检查登录功能,有许多可能的测试用例:
- 测试用例1:输入有效的用户ID和密码时检查结果
- 测试用例2:检查输入无效用户ID和密码的结果
- 测试用例3:当用户ID为空并按下Login Button时检查响应,等等
这只是一个测试用例。
在本教程中,将通过示例学习如何在手动测试中编写测试用例-
- 如何在手工测试中编写测试用例
- 标准测试用例的格式
- 编写好的测试用例示例的最佳实践。
- 测试用例管理工具
- 资源
如果无法访问视频,单击此处
如何在手工测试中编写测试用例
让我们为场景创建一个测试用例:检查登录功能
步骤1) 解释场景的简单测试用例如下
测试用例编号 | 测试用例描述 |
---|---|
1 | 输入有效电子邮件和密码时检查响应 |
步骤2) 为了执行测试用例,需要测试数据。将其添加到下面
测试用例编号 | 测试用例描述 | 测试数据 |
---|---|---|
1 | 输入有效电子邮件和密码时检查响应 | 电子邮件:itxiaonv@email.com密码:lNf9 Oti7 2h |
识别测试数据可能很耗时,有时可能需要重新创建测试数据。它需要被记录的原因。
步骤3) 为了执行测试用例,测试人员需要在AUT上执行一组特定的操作。这方面的文档如下所示:
测试用例编号 | 测试用例描述 | 测试步骤 | 测试数据 |
---|---|---|---|
1 | 输入有效电子邮件和密码时检查响应 | 1) 输入电子邮件地址 2) 输入密码 3) 点击登录 | 电子邮件:itxiaonv@email.com 密码:lNf9 Oti7 2h |
很多时候,测试步骤并不像上面那样简单,因此它们需要文档。此外,测试用例的作者可能会离开组织或记录步骤,这些步骤将对他有所帮助,也有助于其他利益相关者的审查。
步骤4) 软件测试中测试用例的目标是检查AUT的行为以获得预期的结果。这需要记录如下
测试用例编号 | 测试用例描述 | 测试数据 | 预期结果 |
---|---|---|---|
1 | 输入有效电子邮件和密码时检查响应 | 电子邮件:itxiaonv@email.com 密码:lNf9 Oti7 2h | 登录应成功 |
在测试执行期间,测试人员将对照实际结果检查预期结果,并指定通过或失败状态
测试用例编号 | 测试用例描述 | 测试数据 | 预期结果 | 实际效果 | 通过/失败 |
---|---|---|---|---|---|
1 | 输入有效电子邮件和密码时检查响应 | 电子邮件:itxiaonv@email.com密码:lNf9 Oti7 2h | 登录应成功 | 登录成功 | 通过 |
步骤5) 除了测试用例之外–可能有一个类似于前置条件的字段,它指定了在测试可以运行之前必须到位的东西。对于我们的测试用例,后置条件是登录的时间和日期存储在数据库中
标准测试用例的格式
以下是标准登录测试用例示例的格式。
测试用例ID | 测试场景 | 测试步骤 | 测试数据 | 预期结果 | 实际效果 | 通过/失败 |
---|---|---|---|---|---|---|
TU01 | 使用有效数据检查客户登录 | 转到站点http://www.itxiaonv.com 输入用户ID 输入密码 单击提交 | userid=itxiaonv密码=pass99 | 用户应登录到应用程序 | 符合预期 | 经过 |
TU02 | 检查具有无效数据的客户登录 | 转到站点http://www.itxiaonv.com 输入用户ID 输入密码 单击提交 | userid=itxiaonv密码=glass99 | 用户不应登录到应用 | 不出所料 | 通过 |
整个表格可以在Word、Excel或任何其他测试管理工具中创建。这就是测试用例设计的全部内容
在写测试用例时应包括以下信息
- 对正在测试的需求的描述
- 系统将如何进行测试的说明
- 测试设置(如被测应用程序的版本)、软件、数据文件、操作系统、硬件、安全访问、物理或逻辑日期、一天中的时间、先决条件(如其他测试)以及与被测试要求相关的任何其他设置信息
- 投入和产出或过程和预期结果
- 任何校样或附件
- 使用活动案例语言
- 测试用例不应超过15个步骤
- 自动化测试脚本使用输入、目的和预期结果进行注释
- 该设置提供了先决条件测试的替代方案
- 对于其他测试,应该是错误的业务场景顺序
编写好的测试用例示例的最佳实践。
1. 测试用例需要简单且透明:
创建尽可能简单的测试用例。它们必须清晰而简洁,因为测试用例的作者不能执行它们。
使用自信的语言,比如进入主页,输入数据,点击等等。这使得理解测试步骤变得容易,并且测试执行得更快。
2. 在考虑最终用户的情况下创建测试用例
任何软件项目的最终目标都是创建满足客户需求且易于使用和操作的测试用例。测试人员在创建测试用例时必须牢记终端用户的观点
3. 避免测试用例重复。
不要重复测试用例。如果需要一个测试用例来执行其他测试用例,在“前提条件”列中按其测试用例id调用该测试用例。
4. 不要假设
在准备测试用例时,不要假定软件应用程序的功能和特性。遵守规范文档。
5. 确保100%覆盖
确保编写测试用例来检查规范文档中提到的所有软件需求。使用可追溯性矩阵确保没有未测试的功能/条件。
6. 测试用例必须是可识别的。
命名测试用例id,以便在后续阶段跟踪缺陷或识别软件需求时可以容易地识别它们。
7. 实现测试技术
不可能检查软件应用程序中的所有可能条件。软件测试技术帮助选择几个最有可能找到缺陷的测试用例。
- 边界值分析(BVA):顾名思义,它是定义指定值范围的边界测试的技术。
- 等价分区(EP):此技术将范围划分为倾向于具有相同行为的相等部分/组。
- 状态转换技术:当软件行为在特定操作之后从一种状态更改为另一种状态时,使用此方法。
- 错误假设技术:这是对进行手动测试时可能出现的错误进行猜测/预期。这不是一种正式的方法,它利用了测试人员使用应用程序的经验
8. 自清洁
创建的测试用例必须将测试环境返回到测试前状态,并且不应使测试环境不可用。对于配置测试尤其如此。
9. 可重复、自立
无论是谁测试,测试用例每次都应该生成相同的结果
10. 评审
在创建测试用例之后,让同事审阅它们。同事可以发现测试用例设计中的缺陷,而可能很容易遗漏这些缺陷。
测试用例管理工具
测试管理工具是帮助管理和维护测试用例的自动化工具。测试用例管理工具的主要功能包括
- 用于记录测试用例:通过工具,可以使用模板加快测试用例的创建
- 执行测试用例并记录结果:可以通过工具执行测试用例,并且可以很容易地记录得到的结果。
- 自动化缺陷跟踪:失败的测试会自动链接到bug跟踪器,进而可以分配给开发人员,并可以通过电子邮件通知进行跟踪。
- 可跟踪性:需求、测试用例、测试用例的执行都通过工具相互链接,每个用例都可以相互跟踪以检查测试覆盖率。
- 保护测试用例:测试用例应该是可重用的,并且应该保护测试用例不会因为版本控制不佳而丢失或损坏。测试用例管理工具提供如下功能
- 命名和编号约定
- 版本控制
- 只读存储
- 受控访问
- 异地备份
常用的测试管理工具有:Quality Center和JIRA