测试基础-03-用例设计方法:等价类、边界值、场景法、错误推测法

  • Post author:
  • Post category:其他




1 目标和内容

1.1 等价类划分法

1.2 边界值分析法

1.3 场景法

1.4 错误推测法(反推法)



2 等价类划分法

2.1 等价类划分法的概念

等价类划分法是一种典型的、重要的黑盒测试方法,是指某个输入域的子集合。在该子集合中,所有的输入数据对于揭露软件中的错误都是等效的。

等价类划分有效等价类和无效等价类。

举例:微信红包

按数据范围划分:

有效的:0.01~200(1)

无效的:小于0.01(2)如:0.001;大于200(3);0.01-200区间小数点后超出2位的值(4)

按数据类型组成划分:

有效:数字(5)

无效:非数字类型,a、#、中文… (中文)



2.2 等价类划分法用例设计原则

1)划分有效及无效等价类,为每一个等价类规定一个唯一的编号;

2)设计一个新的测试用例数据,使其

尽可能多

地覆盖尚未被覆盖的

有效等价类

,重复这一步,直到所有的有效等价类都被覆盖位置;

3)设计一个新的测试用例数据,使其

仅覆盖1个

尚未被覆盖的

无效等价类

,重复这一步,直到所有的无效等价类都被覆盖为止


2.3.基本用例设计

测试用例设计 测试输入 测试覆盖 边界值
输入正确的红包金额0.01~200 0.01/0.02/199.99/200 1,5 0,0.01,0.02,199.99,200,200.01,负数
金额输入<0.01 0,-0.01 2
金额输入>200 200.01 3
金额输入为小数,精确到0.001 100.111 4
金额输入包含中位、a、字符 a或者中文或字符 6



3 边界值分析法


3.1 定义:

边界值分析法是对等价类划分法的一个补充,边界值一般都是从等价类的边缘值去寻找。边界值分析的基本思想:


正好等于、刚刚大于、刚刚小于


边界的值作为测试数据。


3.2 边界值的作用:

人们从长期的测试工作经验得知,大量的错误是发生在输入或输出范围的边界上,而不是在输入范围的内部。因此针对各种边界情况设计测试用例,可以查出更多的错误!0.01<=x<200,此时输入200,报200不支持,实际上是支持的


3.3 举例

1)比如我们生活中大家熟悉的微信红包:最小金额0.01,最大金额200

边界值:0、0.01、0.02、199.99、200、200.01   (三点法/两点法: 有效值、无效值)

特殊值:负数

2)一个输入文件应包括2~255条记录

边界值:1,2,3,254,255,256   2~255

特殊值:0


3.4 应用场景

边界值的应用场景:如果需求规定了取值范围或规定了取值的个数时,可利用边界值进行测试



4 等价类划分法/边界值分析法常见运用场景

1)输入条件规定的取值范围或值的个数的情况(类似最小<x<最大、最小<x,最大>x),比如用户名长度、红包金额数值的输入范围

2)在输入条件是true和false两种状态的情况;比如勾选、开关设置

3)在下拉列表包含多个选项的情况;比如城市下拉选项(第一个、最后一个、中间一个)

4)在规定了输入数据必须遵守的规则的情况下,可确立一个有效等价类(符合规则)和若干个无效等价类(从不同角度违反规则)

以上除了等价类之外同时会涉及边界值的分析。边界值还包括以下:

1)报表数据的第一行、最后一行、中间一行

2)屏幕上光标在最左上、最右下位置



5.场景法

5.1 什么是场景法?

通过场景描述的


业务流程(业务逻辑),也包括代码实现逻辑


,设计用例来遍历场景(路径),验证软件系统功能的正确性。

5.2 如何使用场景法

5.2.1 画出


流程图

矩形:表示步骤(操作,结果)

菱形:判断–是、否

注意:场景法的重点是测试流程,因此每个流程一个用例验证即可,流程测试没有问题并不能说明系统功能没有问题了,还需要针对


单步的功能进行测试



只有单个功能点和流程测试,才算是充分测试

5.3 场景法举例

银行ATM机取款流程:


场景法举例:

ATM取款经常遇到的场景:

设计方式



1)将正常流程走一遍



2)将每个判断的错误分支走一遍,如果有循环,则多走一遍(第二遍走正确的路径)

用例案例:

1)插入合法银行卡–>输入正确密码,点击确定–>输入100(卡余额2000,ATM现金充足)–>取款成功

2)插入不合法的卡–>提示错误,退卡

3)插入合法卡–>输入正确密码,取消输入–>退卡

4)插入合法卡–>输入错误密码–>提示出错,请重新输入–>输入正确的密码–>输入取款100(卡余额2000)–>取款成功

5)插入合法卡–>输入错误密码三次–>吞卡

6)插入合法卡–>输入正确密码–>输入不合法金额(5元)–>提示重新输入金额(


此处还需要进行功能测试,如非法字符,非整数,非100元


7)插入合法卡–>输入正确密码–>输入10000的金额(卡余额5元,卡余额不足)

8)插入合法卡–>输入正确密码–>输入10000金额(ATM现金不足)



6 错误推测法

基于经验和直觉推测程序中所有可能存在的各种错误,从而有针对性的设计测试用例的方法。它的要素共有3点,分别为:


经验、知识、直觉。

通常是用出错的情况进行测试。

登录功能举例:

登录失败,有哪些可能?

1)密码错误

2)用户名错误/用户名未注册

3)不输入用户名

4)不输入密码

5)网络情况异常,登录提示网络不通

6)不兼容的浏览器,进行兼容性测试

7)账号违规、黑名单

8)服务器登录请求过多(排队系统解决)

9)输入密码次数过多(账号锁定)



版权声明:本文为u013294097原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。