如何开发有效的可复用测试用例,又如何使用和管理?

简介: 在软件测试过程中,一个成熟的团队一般都有自己的公共测试用例库。公共测试用例库即可复用的测试用例库。今天我们就讨论一下如何开发有效的可复用测试用例,并学会如何使用和管理。

在软件测试过程中,一个成熟的团队一般都有自己的公共测试用例库。公共测试用例库即可复用的测试用例库。今天我们就讨论一下如何开发有效的可复用测试用例,并学会如何使用和管理。

一. 可复用测试用例的开发


测试用例是为了验证最小功能点的一组输入、输出及操作序列的集合。可复用测试用例是指“为了复用目的而设计的测试用例”。复用的意义在于通过可复用测试用例验证功能相同或相近的模块,加快测试用例的设计进度、减少测试人员的负担;也可以帮助产品在设计类似功能时的需求细节补充;还可以与开发人员达成协议,后期在开发类似功能的时候,可以事先有一个既有的标准,提高开发效率和代码质量;


1. 可复用维度分析

为高效使用可复用测试用例,测试用例的复用性可从三个维度分析:

image.png

①时间角度:使用以前软件版本的测试用例作为新版本测试用例的基础,可作为软件维护和回归测试时复用。


②通用角度:以某平台或硬件为基础的软件,测试其平台特性的测试用例可以复用。如测试B/S结构网络应用产品,针对该网络结构数据传输安全的测试用例基本都可以复用。


③应用角度:以某特定领域模型为基础构建的测试用例,在同一领域不同应用系统中的测试过程中可以复用。


2.可复用测试用例的质量特性

为构建高质量的可复用测试用例,需要规定可复用测试用例的本质特征,即对其质量特性进行分析。本文基于ISO9126质量模型和ISO9241标准,并对大量测试用例复用的应用情况进行了分析,认为可复用测试用例的质量模型如图1所示。


image.png


1、独立性:可复用测试用例是独立的,且较好的封装了测试步骤和测试数据。即对于测试需求R1和R2,测试用例集分别为C1和C2, C1和C2的交集为空。

2、可维护性:可复用测试用例不局限于具体的应用,不过分依赖被测软件的需求、设计和环境,能够不经修改或稍加修改即可在某一领域或相似领域进行广泛应用。

3、可用性:指可复用测试用例能够有效发现软件缺陷,且易于理解,方便人们的使用,从用户角度反映了可复用测试用例的质量。


二. 可复用测试用例的使用

image.png

可复用测试用例的使用流程

1、测试用例的匹配:软件测试工程师在开展测试工作时,首先对被测软件的业务逻辑、测试环境、测试需求、测试类型进行分析,然后提取被测项的各功能点,形成被测项目的分析清单,并一一与可复用测试用例库中的已有测试用例项进行检索匹配。

2、测试用例复用:如果在库中检索到与待测项相同或相近的测试用例,则测试工程师提取已有测试用例,并进一步将该测试用例具体化,使之成为针对该项目的具体测试用例。

3、生成可复用测试用例并入库:如果在库中没有检索到与被测项相同或相近的测试用例,则测试工程师设计新测试用例,并按照可复用测试用例的质量特性和设计准则进行抽象和泛化,生成新的可复用测试用例。在项目结束时,统一提交评审并入库,为以后的测试用例复用做好准备。


三.  可复用测试用例的管理


对独立的测试团队来说,要实现测试用例的高效复用,须精心设计、选择、收集大量的测试用例,并对其进行良好地组织和管理。在组织测试用例时,按照该测试用例所属的业务领域、项目等进行多级合理的分类、组织、存储。不同层次的测试用例,实现不同程度的复用。
      为避免库中测试用例繁杂不易使用的情况,应对测试用例库进行有效管理,使得库中的用例具有典型性、代表性。对测试用例库的管理包含如下方面:


1、提取抽象测试用例:提取是指在具体项目系统测试完成后,测试团队选取其中能覆盖系统业务规则、设计完善、有代表性的测试用例,并按照可复用测试用例的质量特性、设计原则等对具体测试用例进行抽象的活动。


2、阶段审查:每月或每季度对可复用测试用例库的维护工作,包括相同或相似测试用例的合并、冗余测试用例的剔除、测试用例库结构的调整等活动。
在上述管理活动都包含测试用例的评审工作,评审团队在评审时,需要对可复用测试用例的正确性、复用特性、设计原则的依从性进行评审,评审通过后才可入库。

初级测试工程师-测试架构师 学习之路

四. 可复用测试用例的优点和难点


通过大量的工程实践,不难发现测试用例的复用具有以下优点和难点。其优点如下:

  • 提高软件测试的效率
  • 缩短软件测试的周期
  • 提高软件测试的可靠性
  • 降低软件测试的费 用
  • 部分解决测试人员的经验欠缺。
    但是要真正实现测试用例复用的困难也是不可忽视的, 若不能较好地解决以下问题,必将使得软件测试工作事倍功半。其难点如下:
  • 测试用例数据 库的维护问题
  • 测试用例划分的标准
  • 测试用例的版本管理问题
  • 被测软件之间的差异
  • 管理因素、环境因素、人的因素和教育因素等。


相关文章
|
10天前
|
敏捷开发 前端开发 安全
【测试开发】概念篇 · 测试相关基础概念 · 常见开发模型 · 常见测试模型
【测试开发】概念篇 · 测试相关基础概念 · 常见开发模型 · 常见测试模型
20 0
【测试开发】概念篇 · 测试相关基础概念 · 常见开发模型 · 常见测试模型
|
8天前
|
内存技术
(3)(3.4) 使用测试版和开发版
(3)(3.4) 使用测试版和开发版
12 2
|
9天前
|
测试技术
如何管理测试用例?测试用例有什么管理工具?YesDev
该文档介绍了测试用例和测试用例库的管理。测试用例是描述软件测试方案的详细步骤,包括测试目标、环境、输入、步骤和预期结果。测试用例库用于组织和管理这些用例,强调简洁性、完整性和可维护性。管理者可以创建、删除、重命名用例库,搜索和管理用例,以及通过层级目录结构来组织用例。此外,还支持通过Excel导入和导出测试用例,以及使用脑图查看用例关系。后台管理允许配置全局别名,如用例状态、优先级和执行结果。
|
10天前
|
测试技术
使用 Playwright 复用 Cookie:简化自动化测试的高效方法
Playwright 提供的 Cookie 复用功能允许在不同测试用例间共享会话状态,提高测试效率。通过 `context.set_cookies()` 方法设置共享 Cookie 数据,确保会话在多个测试中保持一致。优点包括节省时间、维持稳定会话,但需注意可能增加测试用例间的依赖。使用此功能可优化自动化测试流程。
25 1
|
10天前
|
机器学习/深度学习 计算机视觉
LabVIEW开发自动读取指针式仪表测试系统
LabVIEW开发自动读取指针式仪表测试系统
24 7
|
10天前
|
数据采集 数据管理 测试技术
LabVIEW开发新型电化学性能测试设备
LabVIEW开发新型电化学性能测试设备
19 6
|
10天前
|
安全 测试技术 持续交付
在Python Web开发中,测试是一个至关重要的环节
【5月更文挑战第12天】在Python Web开发中,测试至关重要,包括单元测试(unittest模块)、集成测试、功能测试、系统测试、验收测试、性能测试、安全测试和端到端测试。常用的测试工具有unittest、pytest、selenium、requests和coverage。遵循“测试先行”和“持续集成”原则,确保代码质量与稳定性。
146 3
|
10天前
|
数据挖掘 测试技术 网络安全
LabVIEW开发卫星测试平台
LabVIEW开发卫星测试平台
13 3
|
10天前
|
数据采集 编解码
LabVIEW开发教学实验室自动化INL和DNL测试系统
LabVIEW开发教学实验室自动化INL和DNL测试系统
14 2
|
10天前
|
监控 网络安全
LabVIEW开发干扰对无线网络基础设施进行隐蔽影响测试
LabVIEW开发干扰对无线网络基础设施进行隐蔽影响测试
26 0

热门文章

最新文章