边界值分析法+场景法
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
黑盒测试-边界值分析法和场景法边界值分析法:
实验1:某选课系统中规定每门课程的选修人数在[20,60]之间,小于20人不开设该门选修课,大于60人不接受后面的选课要求。
结合黑盒测试方法中等价类划分和边界值方法设计测试案例,并给出相应测试用例。
参考答案
测试设计
⏹输入变量:选课人数
⏹测试输入
⏹选择当选课人数分别为19,20,21, 59,60和61等几个边界点
⏹再加上一个正常值点40
实验 2:编写一个程序,输入某雇员的工作时间(以小时计)和每小时的工资数,计算并输出他的工资。
具体如下:
✓若雇员周工作小时小于40小时(0,40),则按原小时工资0.7来计算薪水。
✓若雇员周工作小时等于40小时,则按原小时工资计算薪水。
✓若雇员周工作小时介于40到50((40,50))小时的,超过40的部分按照原小时工资的1.5倍来计算薪水。
✓若雇员周工作小时超过50小时([50,60)),则超过50的部分按原小时工资的3倍来计算薪水。
✓超出60小时或小于0小时,提示输入有误,重新输入。
结合黑盒测试方法中等价类划分和边界值方法设计测试案例,并给出测试用例和相应的测试结果。
参考答案
有效等价类编号无效等价类编号边界值
0~40 (1) <0 (4) 0 40
40~50 (2) >60 (5) 40 50
50~60 (3) 50 60
实际运行结果测试用例覆盖期望结果
(假设小时报酬30)
20 (1) 0.7*30*20=420 420
0 (1) 0 0
-1 (4) 输入有误,重新输入0
39 (1) 0.7*30*39=819 819
40 (1) (2) 30*40=1200 1200
41 (2) 30*40+1*1.5*30=12451245
45 (2) 40*30+5*1.5*30=1425 1425
49 (2) 40*30+9*1.5*30=1605 1605
50 (2) (3) 40*30+10*1.5*30=1650 1650
51 (2) 40*30+10*1.5*30+1*3*30=1740 1740
55 (3) 40*30+10*1.5*30+5*3*30=2100 2100
59 (3) 40*30+10*1.5*30+9*3*30=2460 2460
60 (3) 40*30+10*1.5*30+10*3*30=255
2550
61 (5) 输入有误,重新输入0
-10 (4) 输入有误,重新输入 0
程序参考答案:
#include
float h; float g; float sum; sum=0.0;
printf("请输入小时工资和工作小时数:"); scanf("%f",&h); scanf("%f",&g); if(h>0 && h<40) sum=0.7*h*g;
else if (h>=40 && h<50) sum=40*g+(h-40)*1.5*g; else if(h>=50 && h<=60)
sum=40*g+10*1.5*g+(h-50)*3*g; printf("%f",sum); }
场景分析法
实验 1 :下面是某高校选课系统的用例图,其“选课”用例的事件流描述如下:
基本流:登录,选择课程,获取课程信息,选课,提交选课请求,显示选课结果。
备选流:学生无法识别(学生学号和密码无效时,会产生错误提示) 退出:
不满足选修条件,选课人数已满,和课程时间冲突
选课已经结束
要求:基于基本流和备选流,构造场景,并设计测试用例
实验2:有一个处理单价为5角钱的饮料的自动售货机,只允许投入
登录
选择 课程
浏览课程信息 结果
提交
5角或1元的硬币,其相应的规格说明书描述如下。
①若投入5角钱或1元钱的硬币,按下【橙汁】或【啤酒】的按钮,则相应的饮料就送出来。(每次只投入一个硬币,只按下一种饮料的按钮。)
②如投入5角的硬币,按下按钮后,总有饮料送出。
③若售货机没有零钱找,则【零钱找完】的红灯会亮,这时再投入1元硬币并按下按钮后,饮料不送出来而且1元硬币也退出来。
④若有零钱找,则【零钱找完】的红灯不会亮,若投入1元硬币及按饮料按钮,则送出饮料的同时找回5角硬币。
要求:(1)找出基本流和备选流
(2)构造场景
(3)设计测试用例
场景法:参考答案:
实验1:
根据事件流描述,构造事件流图
根据事件流图,构造场景覆盖从用例开始到结束的路径
2.构造矩阵
☐确定列内容:除了需要包含执行场景所需的数据元素,还需要包含测试
用例标识、被测场景标识或名称
确定行内容:
▪一个负面测试用例
2.根据被测场景特征,补充相应测试用例
实验2 参考答案
(1
)分析基本流和备选流
基本流:投入5角钱,按下【橙汁】或【啤酒】的按钮,则相应的饮料就送出来。 备选流: ① 备选流1:【零钱找完】的红灯没亮,若投入1元硬币及按饮料按钮,则送出饮料的同时找回5角硬币。 ② 备选流2:【零钱找完】的红灯亮,这时投入1元硬币并按下按钮后,饮料不送出来且1元硬币也退出来。 (2)分析场景 场景1:基本流 场景2:备选流1 场景3:备选流2
《软件测试方法和应用》3-71
填入测试数据
☐
步骤
⏹
根据设计的矩阵结果,选择相应的测试数据