常用的测试用例设计方法

测试用例是在测试执行之前编写的,用以指导测试的重要文档,主要包括(各公司模板都有自己的模板)如:编号、日期、测试人员、项目、分项目、预置条件、测试过程、接收标准、测试说明等。

测试用例的设计方法主要有七种:

1.等价类划分

应用场景:只要有数据输入的地方,就可以使用,从无穷多的数据中挑选少数代表进行测试(把所有可能的数据全测一遍时间成本太高,实际中是不可能采用,所以要用最少的成本(时间、数据)达到最大的测试效果)。

核心:

按照需求把无穷多的数据进行分类,区分出有效的(有效等价类)、无效的(无效等价类),从每个数据范围中挑选一个代表进行测试。

有效等价类:符合需求说明合理、有意义(合法)的数据集合

无效等价类:不符合需求说明、不合理、无意义的数据集合

如:姓名3-20个字符

有效数据:大于等于3个字符,小于等于20个字符

无效数据:小于3个字符

         大于20个字符

2. 边界值

应用场景:

一般有数据输入的地方可以使用,边界值往往和等价类划分一起使用比较好,如有效数据和无效数据的分界点容易出现边界错误。

如:年龄18-60

有效数据:大于等于18且小于等于60的整数

无效数据:

小于18

大于60

字母、小数、汉字、特殊符号

其中,18,60,19,59是有效边界和次边界

      17,61是无效次边界

3. 因果图

应用场合:

一个界面,有多个操作,操作和操作之间有一定的组合关系和限制关系,不同组合会产生不同的输出结果,可以使用因果图

在一个界面,有多个操作,操作和操作之间有一定的组合关系和限制关系,不同和组合会产生不同的输出结果,就可以使用因果图

基本因果关系有:

恒等:

如:a=1-->b=1

:

如:a=1,b=1,c=1-->y=1

非:

a=1-->b=0

或:

a=0,b=0,c=0-->y=0

限制因果关系:

互斥(E):

abc最多只有一个1(允许全为0)

唯一(O):

abc有且仅有一个1(不允许全为0)

要求(R):

a=1,要求必须b=1

屏蔽(M):

a=1,要求必须b=0

包含(I):

至少包含一个1(不允许全为0)

4. 判定表

判定表是因果图的简化,本质上是一种方法

判定表适合组合数据较少的情况(一般<20种);

正交排列适合组合较多的情况(一般>20种);

5. 正交排列

应用场合:

一个界面有多个控件,每个控件又有多个取值,要考虑不同控件不同取值之间的组合,

但是组合数据较大(几百、上千),需要从这些组合中挑选典型的组合的代表进行

测试,需要使用正交排列法。

正交表中的Ln(m**k)表示什么意思:

n:表示正交表的行数(即需要测试的次数)

次幂k:表示正交表的列数

m:正交表允许出现的最大值

(说明 :使用正交表法,就是根据控件的个数和每个控件的取值个数决定k和m即可,

k和m确定了,n的值就是固定的)

 

如何选择合适的正交表:

根据控件的个数和每个控件的取值个数,选择适合的正交表(即确定k和m的值)

1)控件的个数,决定k(正交表的列数)

2)每个控件的取值个数,决定m(正交表中允许出现的最大值)

如:有3个控件,每个控件都有4个值(或最多的是4个值)

    k=3,m=4

    选择合适的正交表,把正交表的列名和取值用控件名称和控件真正的取值

替代(映射)

 

6. 测试大纲

应用场合:

一个程序涉及到多个窗口,每个窗口又包含多个操作,操作和操作之间有一定

的联系(即一个完整的流程涉及到多个界面),可以使用测试大纲法

如:安装程序的测试

7. 场景法

应用场合:

界面中没有太多填写项,所有的操作主要通过鼠标单(双)击、拖拽等完成。

场景法适合业务逻辑功能较为复杂的程序(游戏、银行、保险),模拟用户

所有正确的操作和所有错误的操作。

如:ATM取款业务,取款失败需模拟的场景:

1)无效的银行卡

2)密码错误(3次错误)

3)账户余额不足

4)超出当日可取最大限额

5)ATM机余额不足

  ......

场景和用例并不一定是一对一的关系;可能一个场景测试多条用例,也

可能一条用例测试多个场景。

很多时候需要多种方法综合运用达到更好的效果。

原文地址:https://www.cnblogs.com/reyinever/p/7875293.html