[关闭]
@Rookie 2022-01-10T03:05:06.000000Z 字数 5013 阅读 506

测试用例编写规范

赢海


引言

1.1 背景

为保证测试用例对需求的覆盖率,即对一个系统从整体功能到单个功能,都尽可能的高的覆盖。而单个功能点主要强调的是不同的输入及其组合所带来的各种输入动作,系统是否都做了处理;测试用例设计首先要明确该系统存在多少功能点,要通过各种常用的测试方法来保证用例的完整性,然后再对各功能点的边界范围进行考虑。所以要保证测试用例的设计按照一种合理的结构组织进行,这样才能够更有效的保证系统所有功能点的覆盖率。

1.2 目的

为测试用例的质量负责,使测试工作能有序、合理化的进行,从而提高实施测试时对所测产品、系统或者模块的测试质量,也是作为各测试人员在设计用例时的一种规范,使之设计的用例能有效的被管理。

1.3.概念

是指为了实施测试而编写的一组有规范性、有据可依的输入数据与输出数据的组合,也指为了实施测试而向被测对象提供的一组输入、输出数据以及由各种执行条件和期望结果相组合的一个特定集合,以便测试某个程序路径或者来核实是否满足某个特定的需求。

1.4 适用范围

2. 用例规范

2.1 用途

2.2. 设计依据

2.3 用例内容

用例编号: 唯一标识,与需求编号对应,为多对一关系 
目录1:模块名称
目录2: 子模块名称
用例标题: 对测试项简短的描述
用例级别: 确定用例执行的级别
前提条件: 执行用例时需要的预置条件
操作步骤: 执行该动作需要完成的操作
预期结果: 执行完该动作后程序的表现结果
实际结果: 实际输出的结果
问题描述: 执行该用例出现后系统显示的错误
验证结果: 该测试用例是否执行通过
BUG编号: 填写bug库中对应此用例的BUG编号
测试执行者:按照该用例执行测试的人员

2.4. 编写用例原则

2.5 编写用例标准

2.6 用例设计步骤

2.7 用例级别划分

目的:

对测试用例进行优先级的划分,一般需要从三个方面考虑:

P1:确保系统基本功能及主要功能的测试用例

P2:确保系统功能的完善方面的测试用例

P3:关于用户体验,输入输出的验证以及其他较少使用或辅助功能的测试用例 对应的,我们可以对测试用例分为三个级别:高、中、低

备注:对已有的用例级别说明,包括A-正常流程测试、B-异常流程测试、C-页面元素正常输入测试、D-页面元素异常输入测试、E-页面元素显示测试,可具体归类如下(仅供参考):

高(3):A-正常流程测试、C-页面元素正常输入测试

中(2):B-异常流程测试、D-页面元素异常输入测试

低(1):E-页面元素显示测试

2.8. 用例的维护

因为需求的改变等原因可能会使一个基线测试用例不再适合被测系统,那么这些测试用例就会过时,需要对这些测试用例进行及时的删除,在删除过程中,不能够将整行的测试用例删除,应该将要删除的测试用例整行置灰,并将该行的用例计数器清为空;当整个功能模块需要删除时,则将整个SHEET状态置灰,并将用例计数器清空

随着软件项目的进展,测试需求可能会有部分变更,甚至大范围的变更,这个时候我们就会根据需求的变化相应的对测试用例进行维护,修改已经不符合目前需求的内容,并在备注栏中加以说明

如果存在两个或更多测试用例对一组相同的输入和输入进行测试,则需要对其进行删除,只需留下其中的一个 

对新增的功能、在评审过程及测试过程中发现缺少测试用例或者系统出现BUG但是没有与之对应的测试用例,需要按照测试用例的设计标准进行增添,增加测试用例时,需要在相应功能模块的最下方插入新增的测试用例,并在备注栏中加以说明

3.用例设计方法

测试用例要包括欲测试的功能、应输入的数据和预期的输出结果。测试数据应该选用少量、高效的测试数据进行尽可能完备的测试;基本目标是:设计一组发现某个错误或某类错误的测试数据,测试用例应覆盖方面:

1.正确性测试:输入用户实际数据以验证系统是满足需求规格说明书的要求;测试用例中的测试点应首先保证要至少覆盖需求规格说明书中的各项功能,并且正常。

2.容错性(健壮性)测试:程序能够接收正确数据输入并且产生正确(预期)的输出;输入非法数据(非法类型、不符合要求的数据、溢出数据等),程序应能给出提示并进行相应处理。把自己想象成一名对产品操作一点也不懂的客户,在进行任意操作。

3.完整(安全)性测试:对未经授权的人使用软件系统或数据的企图,系统能够控制的程度,程序的数据处理能够保持外部信息(数据库或文件)的完整。

4.接口间测试:测试各个模块相互间的协调和通信情况,数据输入输出的一致性和正确性。

5.数据库测试:依据数据库设计规范对软件系统的数据库结构、数据表及其之间的数据调用关系进行测试。

6.边界值分析法:确定边界情况(刚好等于、稍小于和稍大于和刚刚大于等价类边界值),针对我们的系统在测试过程中主要输入一些合法数据/非法数据,主要在边界值附近选取。

7.压力测试:输入10条记录运行各个功能,输入30条记录运行,输入50条记录运行,进行测试。

8.等价划分:将所有可能的输入数据(有效的和无效的)划分成若干个等价类。

9.错误推测:主要是根据测试经验和直觉,参照以往的软件系统出现错误之处。

10.效率:完成预定的功能,系统的运行时间(主要是针对数据库而言)。

11.可理解(操作)性:理解和使用该系统的难易程度(界面友好性)。

12.可移植性:在不同操作系统及硬件配置情况下的运行性。

13.回归测试:按照测试用例将所有的测试点测试完毕,测试中发现的问题开发人员。

14.比较测试:将已经发版的类似产品或原有的老产品与测试的产品同时运行比较,或与已往的测试结果比较。

15、兼容性测试:操作系统的兼容性测试内容不仅包括软件的安装,还需对关键流程和功能点进行检查。而需要测试哪些操作系统的兼容性,首先取决于软件用户文档上对用户的承诺,其次就需要对一些常用操作系统兼容的检查

16、历史版本兼容性测试:某些功能存在新版本和历史版本数据显示、页面展示不一致的问题。需要不同版本进行测试。

4.用例评审

1、评审原因

测试用例是软件测试的原则,但由于软件人员对在需求理解、设计等理解程度不同等因素的影响,首次产生的测试用例质量难以避免会有不同程度的差异,故对编写的测试用例进行评审是很有必要的,其作用是测试用例的评审过程能够起到用例结构清晰化、场景覆盖全面化以及优先用例的合理化安排等。

2、评审内容

3、评审过程

基于项目需求的测试计划完成之后,进行初审,主要是对测试范围和测试要点进行审查  在测试用例的设计完成之后进行复审,主要是对测试用例的结构和覆盖率进行评审所有测试用例结束后,主要是对测试用例的具体描述是否有很好的可执行性,是否有冗余用例的存在进行评审

4、评审人员

5、 评审方式

6、 结束标准

经评审的用例由用例设计者根据评审的建议或意见进行修改,更新用例,再次发起评审、修改、更新用例,反复评审后,直至用例达到要求。(反复评审时存在时间问题)

5.用例执行

1、用例工具:test-ink

2、流程:

1、建立测试计划

2、建立对应的版本

3、添加测试用例到对应的测试计划中

4、分派测试用例给制定的测试人员

5、逐条执行测试用例,并及时更改用例状态,通过时,标记通过,当用例执行失败时,需要通过test-ink上提bug跳转到mantis上提bug。把测试用例和bug进行关联。当用例阻塞时,标记为阻塞。并在备注中添加阻塞原因。

6. 回归测试

阻塞和失败用例重新执行后,及时更改用例状态。

7 风险分析

添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注