实验1 黑盒测试用例设计
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验1 黑盒测试用例设计
1、实验目的
1、掌握黑盒测试用例的设计方法。
2、综合运用所学的黑盒测试方法设计测试用例。
2、实验准备
1、黑盒测试用例的设计方法。
2、测试用例模板。
3、实验内容
3.1基本训练
实验一:假设现有以下的三角形分类程序。该程序的功能是,读入代表三角形边长的3个整数,判定它们能否组成三角形。如果能够,则输出三角形是等边、等腰或任意三角形的分类信息。图1显示了该程序的流程图和程序图。为以上的三角形分类程序设计一组测试用例。
图1
实验二:为自动售货机设计黑盒测试用例
有一个处理单价为5角钱的饮料的自动售货机软件测试用例的设计。其规格说明如下:若投入5角钱或1元钱的硬币,押下〖橙汁〗或〖啤酒〗的按钮,则相应的饮料就送出来。若售货机没有零钱找,则一个显示〖零钱找完〗的红灯亮,这时在投入1元硬币并押下按钮后,饮料不送出来而且1元硬币也退出来;若有零钱找,则显示〖零钱找完〗的红灯灭,在
送出饮料的同时退还5角硬币。
3.2扩展训练
题目1:利用因果图法编写测试用例。
某奖金计算软件实现功能如下:
1该软件可以计算某公司的年终奖,该公司员工分为普通员工和管理人员。
2员工表现分为普通、优秀和特殊贡献(普通和优秀员工都可以有特殊贡献,普通员工表现普通和管理人员表现普通拿的工资是不同的)。
3 根据员工的分类和表现,将奖金分为1类奖金,2类奖金——。
具体分析:
输入条件:员工类别:普通员工A1、管理人员A2
员工表现:普通B1、优秀B2、特殊贡献B3
输出条件:奖金类别:1类奖金C1、2类奖金C2——
其中:A1和A2是互斥的,B1和B2是互斥的,B1和B3,B2和B3可以同时满足。
普通员工:A1+B1—>C1
A1+B2 —〉C2
A1+B1+B3—〉C3
A1+B2+B3—〉C4
管理人员:A2+B1—〉C5
A2+B2—〉C6
A2+B1+B3—〉C7
A2+B2+B3—〉C8
4、实验步骤
4.1基本训练
实验一步骤:
第一步:确定测试策略。在本例中,对被测程序的功能有明确的要求,即:(1)判断能否组成三角形;
(2)识别等边三角形;
(3)识别等腰三角形;
(4)识别任意三角形。因此可首先用黑盒法设计测试用例,然后用白盒法验证其完整性,必要时再进行补充。
第二步:根据本例的实际情况,在黑盒法中首先可用等价分类法划分输入的等价类,然后用边界值分析法和猜错法作补充。
等价分类法:
有效等价类:
输入3个正整数:
(1)3数相等
(2)3数中有2个数相等,比如AB相等
(3)3数中有2个数相等,比如BC相等
(4)3数中有2个数相等,比如AC相等
(5)3数均不相等
(6)2数之和不大于第3数,比如最大数是A
(7)2数之和不大于第3数,比如最大数是B
(8)2数之和不大于第3数,比如最大数是C
无效等价类:
(9)含有零数据
(10)含有负整数
(11)少于3个整数
(12)含有非整数
(13)含有非数字符
边界值法:
(14)2数之和等于第3数
猜错法:
(15)输入3个零
(16)输入3个负数
第三步:提出一组初步的测试用例,如下表所示:
请分别用弱健壮和强一般分别设计测试用例!
实验二步骤:
(1)列出原因和结果
原因:
1.售货机有零钱找
2.投入1元硬币
3.投入5角硬币
4.押下橙汁按钮
5.押下啤酒按钮
结果:
21.售货机〖零钱找完〗灯亮
22.退还1元硬币
23.退还5角硬币
24.送出橙汁饮料
25.送出啤酒饮料
(2)画出因果图,如图2示。所有原因结点列在左边,所有结果结点列在右边。建立中间结点,表示处理的中间状态。中间结点:
11. 投入1元硬币且押下饮料按钮
12. 押下〖橙汁〗或〖啤酒〗的按钮
13. 应当找5角零钱并且售货机有零钱找
14. 钱已付清
图 2
(3)转换成判定表
(4)在判定表中,阴影部分表示因违反约束条件的不可能出现的情况,删去。第16列与第32列因什么动作也没做,也删去。最后可根据剩下的16列作为确定测试用例的依据。
5、实验思考
(1)如何确定等价类?
(2)如何使用判定表设计测试?
附录:NextData问题黑盒测试用例设计
一、问题描述
程序有三个输入变量month、day、year(month、day和year均为整数值,并且满足:1≤month≤12、1≤day≤31、1900≤year ≤2050。),分别作为输入日期的月份、日、年份,通过程序可以输出该输入日期在日历上下一天的日期。例如,输入为2005年11月29日,则该程序的输出为2005年11月30日。请用黑盒测试方法设计测试用例。
三、设计测试用例
1. 用边界值测试方法设计测试用例
用健壮性测试法设计测试用例,按照下列步骤进行:
(1)分析各变量的取值
健壮性测试时,各变量分别取:略小于最小值、最小值、略高于最小值、正常值、略低于最大值、最大值和略大于最大值。
month:-1,1,2,11,12,13;
day:-1,1,2,30,31,32
year:1899,1900,1901,1975,2049,2050,2051;
(2)测试用例数
有n个变量的程序,其边界值分析会产生6n+1个测试用例。这里有3个变量,因此会产生19个测试用例。
(3)设计测试用例,见表1-1。
NextDate函数的复杂性来源于两个方面:一是输入域的复杂性(即输入变量之间逻辑关系的复杂性),二是确定闰年的规则。但是在进行健壮性测试时,没有考虑输入变量之间的逻辑关系,也没有考虑和闰年相关的问题,因此在设计测试用例时存在遗漏问题,比如和判断闰年相关的日期:2008.2.29、1999.2.28等。