黑盒测试——等价类划分

黑盒测试——等价类划分

等价类划分原则
  1. 在输入条件规定了取值范围或值的个数的情况下,可以确立一个有效等价类和两个无效等价类。
  2. 输入条件规定了输入值的集合或者规定了“必须如何”的条件的情况下,可确立一个有效等价类和一个无效等价类。
  3. 在输入条件是一个布尔值的情况下,可确定一个有效等价类和一个无效等价类。
  4. 在输入条件是一组值(假定n个),并且程序要对每一个输入值分别处理的情况下,可确立n个有效等价类和一个无效等价类。
  5. 在规定了输入数据必须遵守的规则的情况下,可确立一个有效等价类(符合规则)和若干个无效等价类(从不同角度违反规则)。
  6. 在确知已划分的等价类中各元素在程序处理中的方式不同的情况下,则应再将该等价类进一步划分为更小的等价类。

 

等价类划分法设计测试用例步骤

  1. 分析并确定等价类。
  2. 建立等价类表,列出所有划分的等价类。
  3. 根据列出的等价类表,按照以下三个步骤设计测试用例:
  • 为每一个等价类规定一个唯一的编号;
  • 设计一个新的测试用例,使其尽可能多地覆盖尚未被覆盖的有效等效类。重复这一步骤,直到所有的有效等价类都被覆盖为止;
  • 设计一个新的测试用例,使其仅覆盖一个尚未被覆盖的无效等价类。重复这一步骤,直到所有的无效等价类都被覆盖为止。

 

等价类划分具体测试步骤

以下列“在线计算器”为例

![在这里插入图片描述](https://img-blog.csdnimg.cn/20200527164325583.png)

 

需求如下:

  1. 下拉框选择计算类型(+、-、*、/)
  2. 所有计算类型下,两个输入框中均只能输入数字类型
  3. 不能输入为空
  4. 在选择计算类型为“/”时,除以上限制,除数(即第二个输入框)输入不能为0

 

 

 

第一步:根据需求,划分等价类

该“在线计算器”包含2个变量ddl_Operator、txt_number1和txt_number2。根据等价类划分原则第五条的内容“在规定了输入数据必须遵守的规则的情况下,可确立一个有效等价类(符合规则)和若干个无效等价类(从不同角度违反规则)。”,可以确立一个有效等价类和若干个无效等价类。

  • 有效等价类:任意数字类型
  • 无效等价类:①字母;②汉字;③特殊字符;④空;⑤除法计算下txt_nember2为0

 

第二步:建立等价类表,列出所有划分的等价类。

输入条件

有效等价类

无效等价类

ddl_Operator=+、-、*

1.两个数值均为数字类型

2.txt_number1为字母,txt_nember2为数字

3.txt_number1为字母,txt_nember2为汉字

4.txt_number1为字母,txt_nember2为特殊字符

5.txt_number1为字母,txt_nember2为空

6.txt_number1为汉字,txt_nember2为数字

7.txt_number1为汉字,txt_nember2为特殊字符

8.txt_number1为汉字,txt_nember2为空

9.txt_number1为特殊字符,txt_nember2为数字

10.txt_number1为特殊字符,txt_nember2为空

11.txt_number1为空,txt_nember2为数字

 

ddl_Operator=/

12. txt_number1为数字类型,txt_nember2为除0外的数字类型

13. txt_number1为数字,txt_nember2为0

14. txt_number1为字母,txt_nember2为0

15. txt_number1为特殊字符,txt_nember2为0

16. txt_number1为空,txt_nember2为0

 

 

 

第三步:根据列出的等价类表,设计测试用例

 

 

用例编号

测试描述

测试步骤

预期结果

测试结果

Test1

两个数值均为数字类型

1、下拉框选择“+”;2、在第一个输入框中输入:12,第二个输入框中输入:24;

3、点击计算按钮

点击确定按钮之后,在界面上出现计算结果:48

 

Test2

txt_number1为字母,txt_nember2为数字

1、下拉框选择“+”;2、在第一个输入框中输入:A,第二个输入框中输入:24;

3、点击计算按钮

点击确定按钮之后,在界面上弹出错误提示框,提示:“输入有误,只能输入数字”

 

Test3

txt_number1为字母,txt_nember2为汉字

1、下拉框选择“+”;2、在第一个输入框中输入:B,第二个输入框中输入:张;

3、点击计算按钮

点击确定按钮之后,在界面上弹出错误提示框,提示:“输入有误,只能输入数字”

 

Test4

txt_number1为字母,txt_nember2为特殊字符

 

1、下拉框选择“+”;2、在第一个输入框中输入:C,第二个输入框中输入:~;

3、点击计算按钮

点击确定按钮之后,在界面上弹出错误提示框,提示:“输入有误,只能输入数字”

 

Test5

txt_number1为字母,txt_nember2为空

1、下拉框选择“+”;2、在第一个输入框中输入:d,第二个输入框中输入:  ;

3、点击计算按钮

点击确定按钮之后,在界面上弹出错误提示框,提示:“输入有误,输入不能为空”

 

Test6

.txt_number1为汉字,txt_nember2为数字

1、下拉框选择“+”;2、在第一个输入框中输入:瑛,第二个输入框中输入:24;

3、点击计算按钮

点击确定按钮之后,在界面上弹出错误提示框,提示:“输入有误,只能输入数字”

 

Test7

txt_number1为汉字,txt_nember2为特殊字符

1、下拉框选择“+”;2、在第一个输入框中输入:张,第二个输入框中输入:@;

3、点击计算按钮

点击确定按钮之后,在界面上弹出错误提示框,提示:“输入有误,只能输入数字”

 

Test8

txt_number1为汉字,txt_nember2为空

1、下拉框选择“+”;2、在第一个输入框中输入:瑛,第二个输入框中输入:  ;

3、点击计算按钮

点击确定按钮之后,在界面上弹出错误提示框,提示:“输入有误,输入不能为空”

 

Test9

txt_number1为特殊字符,txt_nember2为数字

1、下拉框选择“+”;2、在第一个输入框中输入:#,第二个输入框中输入:24;

3、点击计算按钮

点击确定按钮之后,在界面上弹出错误提示框,提示:“输入有误,只能输入数字”

 

Test10

txt_number1为特殊字符,txt_nember2为空

1、下拉框选择“+”;2、在第一个输入框中输入:$,第二个输入框中输入:  ;

3、点击计算按钮

点击确定按钮之后,在界面上弹出错误提示框,提示:“输入有误,输入不能为空”

 

Test11

txt_number1为空,txt_nember2为数字

1、下拉框选择“+”;2、在第一个输入框中输入:  ,第二个输入框中输入:24;

3、点击计算按钮

点击确定按钮之后,在界面上弹出错误提示框,提示:“输入有误,输入不能为空”

 

Test12

txt_number1为数字类型,txt_nember2为除0外的数字类型

1、下拉框选择“/”;2、在第一个输入框中输入:12,第二个输入框中输入:24;

3、点击计算按钮

点击确定按钮之后,在界面上出现计算结果:0.5

 

Test13

txt_number1为数字,txt_nember2为0

1、下拉框选择“/”;2、在第一个输入框中输入:12,第二个输入框中输入:0;

3、点击计算按钮

点击确定按钮之后,在界面上弹出错误提示框,提示:“输入有误,除数不能为0”

 

Test14

txt_number1为字母,txt_nember2为0

1、下拉框选择“/”;2、在第一个输入框中输入:A,第二个输入框中输入:0;

3、点击计算按钮

点击确定按钮之后,在界面上弹出错误提示框,提示:“输入有误,只能输入数字”

 

Test15

txt_number1为特殊字符,txt_nember2为0

1、下拉框选择“/”;2、在第一个输入框中输入:%,第二个输入框中输入:0;

3、点击计算按钮

点击确定按钮之后,在界面上弹出错误提示框,提示:“输入有误,只能输入数字”

 

Test16

txt_number1为空,txt_nember2为0

1、下拉框选择“+”;2、在第一个输入框中输入:  ,第二个输入框中输入:24;

3、点击计算按钮

点击确定按钮之后,在界面上弹出错误提示框,提示:“输入有误,输入不能为空”

 

(注:代码判断输入是先判断是否为空>是否是数字类型>除数是否为0)

 

疑惑与问题
  1. 除法计算与其它计算存在除数不能为0的情况,我很纠结要不要把上述2~11种无效等价类放在一起测试
  2. 需不需要把四种计算方式单独分开划分等价类
  3. 例如:txt_number1为数字和txt_number2为字母
  4. txt_number1为字母和txt_number2为数字

    应当成一种无效等价类还是两种

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值