测试用例(Test Case)是为特定的目的而设计的一组测试输入、执行条件和预期结果的文档。它的作用其实就是为了测试是否满足某个特定需求。测试用例是指导测试工作进行的依据。
测试用例的组成
标准的测试用例通常由以下几个模块组成:
·用例编号:测试用例的唯一标识。
· 模块:标明被测需求具体属于哪个模块,主要为了更好识别以及维护用例。
· 用例标题:又称之为测试点,就是用一句话来描述测试用例的关注点。每一条用例对应一个测试目的。
· 优先级:根据需求的优先级别来定义。高优先级要覆盖核心业务,重要特性以及使用频率比较高的部分。
· 前提条件:用例在执行之前需要满足的一些条件,否则测试用例无法执行。比如一些测试环境,或者需要提前执行的操作。
· 测试数据:在执行测试时,需要输入一些外部数据来完成测试。这些数据根据测试用例的据统计情况来确定,有参数、文件或者数据库记录等等。
· 测试步骤:测试用例的步骤描述,执行人员可以根据测试步骤完成测试的执行。
· 期望结果:是测试用例中最重要的部分,主要用来判断被测对象是否正常。要根据需求来描述用户的期望
· 实际结果:PASS 通过,FAIL 失败,N/A 未执行。
测试用例优先级
在工作中,测试用例根据系统需求会划分成不同的等级:
· P0:核心功能测试用例(冒烟测试),确定此版本是否可测的测试用例。此部分测试用例如果 FAIL,其他测试用例就可以不用执行了,需要打回去给开发重新提测。
· P1:高优先级测试用例,最常执行用来保证功能是稳定的。包含基本功能测试和重要的错误、边界测试。
· P2:中优先级测试用例,更全面的验证功能的各个方面,包含异常测试、边界、中断、网络、容错、UI 等测试用例。
· P3:低优先级测试用例,不常常被执行,一般包含性能、压力、兼容性、安全、可用性等等。
在不同的公司,可能测试用例的等级划分有所差异,但是基本大同小异。
测试用例的作用
写测试用例能带来哪些好处呢?
首先,有用例就可以做到心中有数,不会一个测试点重复测好多次,就有思路,避免漏掉测试点。而且在测试用例中可以将测试数据提前准备好,这样就不会漏掉一些重要的数据了。
测试用例的执行结果也是评估测试结果的度量基准。如果设计全面覆盖需求的用例,测试用例都执行通过,发现的问题全部修改,即可放心交付给客户使用。
测试用例也是分析缺陷的标准。因为测试用例中会详细描述期望结果,这个期望结果其实就是分析是不是有 Bug 的一个标准。和预期结果一致的,就是没有 Bug。反之,和预期结果不一致,就是存在 Bug,需要研发修复。
测试用例设计工具
在写用例的时候,可以使用思维导图去把模块和用例的设计思路理清楚。思维导图完成之后就可以评审。评审完毕后,有需要修改的地方可以在思维导图直接修改。
如果要求要用表格的方式去写测试用例的话,可以再把思维导图中的测试思路转化成为表格形式。
后面我们会给大家介绍测试用例的具体设计方法哦~敬请期待!
测试用例设计方法有哪些?
其实测试用例的设计方法主要就是7大方法:
等价类划分,边界值,场景法,判定表,因果图,错误推断法,正交测试法。
很多人都只是知道这些方法,每个方法合起来就立马懵逼了。
在想把这些方法联系起来之前,我们先来看看每种方法要解决的问题。
等价类划分的出现,是让测试成为可能。
举个例子,比如说我们测试手机号输入框,如果没有等价类划分,那么是不是就要把所有的情况穷举一次。
当时如果有了等价类划分,我们至少可以把它们归类。
比如手机号可以分为有效和无效,并且无效可以分为长度无效,规则无效,输入的信息不规范等等。
之后等价类分类完成之后,下来就是对于分类界限的边界点进行选取,每一个边界值都是在等价类划分完成之后才产生的边界点。
所以边界值其实是在等价类的边缘去寻找错误。
再说下场景法,很多时候,我们测试的是整个所有的软件,那么在梳理业务流程的时候,就会用到场景法,用场景法梳理出正常流,备选流,之后再结合每一个流做细化的等价类划分和边界值。
判定表是遇到输入和输出之间有关联关系的时候会用到,会将业务之中有关联关系的地方使用判定表梳理出来,再结合判定表的每一项做等价类边界值细化的测试。
因果图不太常用,本身因果图其实是为了得到判定表。至于错误推断法,则主要是经常我们测试过程中,结合软件实际的情况,有针对性的猜测会出现问题的地方,针对性设计用例。
最后,正交测试,主要是在遇到多个因素,水平关系的时候,才会用少量的代替全面。
总结:
测试方法主要有等价类、边界值、场景法、判定表、因果图、错误推断法、正交试验法,首先拿到需求文档时,我会先用场景法梳理清楚软件的基本流和备选流,再结合等价类、边界值分析测试用例;当输入与输出有对应关系的时候我会先画出判定表,再结合等价类、边界值分析;当然遇到那种特别复杂的,像网上提到的售货机的例子,我会先用因果图梳理出判定表。还有就是可以根据自己对软件错误的知识积累,采取错误推断法来测试,最后还有一种不是很常用的正交试验法,主要是用于有水平关系,项目比较紧急时,采取抽样测试的方法进行的测试。