黑盒测试:测试者在不考虑程序内部结构的情况下,仅一句程序功能的需求规范来设计测试用例。
主要分为等价类划分与边界值分析两种测试方法:
等价类划分:把程序划分成为若干个部分,从每个部分选取少许代表性数据当测试用例。
划分:
设计测试用例的步骤:
测试用例等价类表:
输入条件 | 有效等价类 | 编号 | 无效等价类 | 编号 |
---|
某城市电话号码由三部分组成,它们的名称和内容分别是:
假定被测程序能接受一切符合上述规定的电话号码,拒绝所有不符合规定的电话号码。
等价类表:
输入条件 | 有效等价类 | 编号 | 无效等价类 | 编号 |
---|---|---|---|---|
地区码:空白或3位数字 | 空白 | 1 | 大于3位数字 | 5 |
000<=输入数值<=999 | 2 | 小于3位数字 | 6 | |
存在非数字字符 | 7 | |||
前缀:非‘0‘或非‘1‘的三位数字 | 200<=输入数值<=999 | 3 | 首数字为1 | 8 |
大于3位数字 | 9 | |||
小于3位数字 | 10 | |||
首数字为0 | 11 | |||
存在非数字字符 | 12 | |||
后缀:4位数字 | 0000<=输入数值<=9999 | 4 | 大于4位数字 | 13 |
小于4位数字 | 14 | |||
存在非数字字符 | 15 |
注意:这里第二个需求中写的是前缀:非‘0‘或非‘1‘的三位数字,需求不是很明确,无法确定是开头不能,还是3位中都不能出现,所以需要跟“客户”明确一下他的需求。
边界值分析法:是对等价类划分的进一步补充,通过选择等价类边界值的测试用例来发现更多的错误,因为大量的错误大多发生在输入输出与边界,而不是其取值范围内。
设计测试用例的步骤:(其实就是针对小于、等于和大于边界值的测试用例进行测试)(画个数轴最省事)
例如,
取值范围-4~-1
边界值-4、-1
小于-4:取-5
等于-4:取-4
大于-4:取-1,这里不用取-3了,-1就够了,当然-3也行
小于-1:取-4
等于-1:取-1
大于-1:取0
所以最终取:-5、-4、-1、0(即 刚好达到该范围的边界值,以及刚刚超过这个范围的边界值)
如果输入条件规定取值的范围,则选取刚好达到该范围的边界值,以及刚刚超过这个范围的边界值;
例如,若输入值的范围是“-0.1~1.0”,则可选取“-1.001”、“-1.0”、“1.0”、“1.001”作为测试输入数据。
如果规定的是输入值的个数,则选取最大个数,最小个数,以及比最大个数大一个的个数和比最小个数小一个的数;
例如,一个输入文件可有1~255个记录,则可以分别设计有1个记录、255个记录以及0个记录和256个记录的输入文件。
如果规定的是输入域或输出域的有序集合,则选取集合的第一个元素和最后一个元素最为实验用例;
注意:是“有序”集合,所以取第一个和最后一个。
如果程序中使用了一个内部数据结构,则应当选取这个内部数据结构的边界值;
例如,如果程序中定义了一个数组,其元素下标的下界是0,上界是100,那么应该选择达到这个数组下标边界的值,如0和100作为测试用例.
分析规格说明书,找出其他可能的边界值条件。
测试用例表:
测试用例编号 | 输入 | 期望输出 |
---|
持卡人境外消费交易单笔金额满2000元人民币或等值外币,即可享20元人民币或等价外币返现;
境外消费单笔满3000元人民币或等值外币,即可享30元人民币或等价外币返现;
境外消费单笔满5000元人民币或等值外币,即可享50元人民币或等价外币返现;
每张卡片每个自然月最高返现500元人民币或等值外币。每笔消费交易返现一次,并且单笔消费额不包含货币转换费。
测试用例表:(取值范围0~N+)
测试用例编号 | 输入(消费)(RMB) | 期望输出 |
---|---|---|
Test1 | 单笔消费-1 | 错误,单笔消费不得小于0 |
Test2 | 单笔消费0 | 没有返现 |
Test3 | 单笔消费2000 | 返现20 |
Test4 | 单笔消费2001 | 返现20 |
Test5 | 单笔消费3000 | 返现30 |
Test6 | 单笔消费3001 | 返现30 |
Test7 | 单笔消费5000 | 返现50 |
Test8 | 单笔消费5001 | 返现50 |
Test9 | 当月消费0 | 返现0 |
Test10 | 当月消费50000 | 返现500 |
Test11 | 当月消费50001 | 返现500 |
注意:以上所有的一切都只是准备测试用例,即 接下来该测试什么,而不是说黑盒测试就是画个表就完了。
设计完测试用例之后,再一个一个上机对着测试用例输入进行测试,看看是否符合期望输出。
原文:https://www.cnblogs.com/blknemo/p/12396978.html