相馆网站建设费用预算重庆网站seo公司
在黑盒测试过程中,有9种常用的方法:
1.等价类划分
2.边界值分析
3.判定表法
4.正交实验法
5.流程图分析
6.因果图法
7.输入域覆盖法
8.输出域覆盖法
9.猜错法
我们一般用第1种和第2种方法最多。此处简单介绍一下这两种方法,详细介绍其他7种方法。
1.等价类划分
等价类分为:有效等价类,无效等价类。
我们举例说明:
一个年龄输入框,年龄age必须是18-40岁(包含18,不包含40)。(此处忽略数值类型,假设用户只会输入整数)
根据条件,我们可以判断age的范围:18<=age<40
有效等价类:18<=age<40
无效等价类:age<18和age>=40
我们测试的时候在有效等价类和无效等价类中分别都要取数据验证,使得测试尽量完整、充分。
当然,此处我是假设的用户只会输入整数以便理解该方法。
但是在实际过程中,往往不会跟设想一致。
下面列举几个其他例子:
1.【1,2,3,4】取其中任意一个值
可以分为4个有效等价类和1个无效等价类
2.bool值(真/假)
可以分为1个有效等价类和1个无效等价类
3.设定条件
条件:密码为字母+数字的组合。
分析:键盘可输入:字母、数字、字符
有效等价类:字母+数字。
无效等价类就很多了,简单列举几个:
任意一种:纯字母、纯数字、纯字符
两两组合:字母+字符,数字+字符
三个组合:字母+数字+字符
空
。。。。。。
2.边界值分析
边界值分析法一般和等价类划分法一起使用。
区别在于:
等价类划分是划分有效等价类和无效等价类,从2个类中取值。
边界值分析法就是对其中的边界点进行取值,以免程序在边界点发生问题。
还是那个例子:
一个年龄输入框,年龄age必须是18-40岁(包含18,不包含40)。(此处忽略数值类型,假设用户只会输入整数)
我们已经分析出age的范围:18<=age<40,边界值就是18和40。
不过在测试过程中,我一般会对边界值左右非常接近的值进行验证,也就是17,19;39,41。
其他的例子还有很多:
1.浏览器的四个角,4个边框
2.不同数值类型的边界(int,double等等)
。。。。。。
3.判定表法
定义:对于给出的条件,列出所有可能的组合,形成判定表。
适用场景:
1.多种互不影响的条件不同的取值,分别执行不同的操作
2.需求就是判定表的形式
3.条件项和动作项都不多的情况下
判定表有4个部分:
a.条件项
b.条件值
c.动作项
d.动作值
举例:
买电影票。
周三下午,情侣购票:女生免票。(刷卡优惠:女生免票)
周三下午,其余人购票:刷卡8折。
条件项:周三下午,刷卡,情侣
动作项:8折,女生免票,全票
值:0,1
画判定表:
条件 | 周三下午 | 1 | 1 | 1 | 1 | |||||
刷卡 | 1 | 1 | 1 | 1 | ||||||
情侣 | 1 | 1 | 1 | 1 | ||||||
动作 | 8折 | 1 | ||||||||
女生免票 | 1 | 1 | ||||||||
全票 | 1 | 1 | 1 | 1 | 1 |
这种方法非常清晰地列出了所有的测试项,但是当条件项和动作项比较多的时候非常繁琐。