边界值分析法场景法Word文档格式.docx
《边界值分析法场景法Word文档格式.docx》由会员分享,可在线阅读,更多相关《边界值分析法场景法Word文档格式.docx(8页珍藏版)》请在冰点文库上搜索。
具体如下:
✓若雇员周工作小时小于40小时(0,40),则按原小时工资0.7来计算薪水。
✓若雇员周工作小时等于40小时,则按原小时工资计算薪水。
✓若雇员周工作小时介于40到50((40,50))小时的,超过40的部分按照原小时工资的1.5倍来计算薪水。
✓若雇员周工作小时超过50小时([50,60)),则超过50的部分按原小时工资的3倍来计算薪水。
✓超出60小时或小于0小时,提示输入有误,重新输入。
结合黑盒测试方法中等价类划分和边界值方法设计测试案例,并给出测试用例和相应的测试结果。
有效等价类
编号
无效等价类
边界值
0~40
(1)
<
(4)
040
40~50
(2)
>
60
(5)
4050
50~60
(3)
5060
测试用例
覆盖
期望结果
(假设小时报酬30)
实际运行结果
20
0.7*30*20=420
420
-1
输入有误,重新输入
39
0.7*30*39=819
819
40
(1)
(2)
30*40=1200
1200
41
30*40+1*1.5*30=1245
1245
45
40*30+5*1.5*30=1425
1425
49
40*30+9*1.5*30=1605
1605
50
(2)(3)
40*30+10*1.5*30=1650
1650
51
40*30+10*1.5*30+1*3*30=1740
1740
55
40*30+10*1.5*30+5*3*30=2100
2100
59
40*30+10*1.5*30+9*3*30=2460
2460
40*30+10*1.5*30+10*3*30=2550
2550
61
(5)
-10
程序参考答案:
#include<
stdio.h>
voidmain()
{
floath;
floatg;
floatsum;
sum=0.0;
printf("
请输入小时工资和工作小时数:
"
);
scanf("
%f"
&
h);
g);
if(h>
0&
&
h<
40)
sum=0.7*h*g;
elseif(h>
=40&
50)
sum=40*g+(h-40)*1.5*g;
elseif(h>
=50&
=60)
sum=40*g+10*1.5*g+(h-50)*3*g;
sum);
}
场景分析法
实验1:
下面是某高校选课系统的用例图,其“选课”用例的事件流描述如下:
基本流:
登录,选择课程,获取课程信息,选课,提交选课请求,显示选课结果。
备选流:
学生无法识别(学生学号和密码无效时,会产生错误提示)
退出:
(允许学生在选课过程中退出)
不满足选修条件,选课人数已满,和课程时间冲突
选课已经结束
要求:
基于基本流和备选流,构造场景,并设计测试用例
实验2:
有一个处理单价为5角钱的饮料的自动售货机,只允许投入5角或1元的硬币,其相应的规格说明书描述如下。
①若投入5角钱或1元钱的硬币,按下【橙汁】或【啤酒】的按钮,则相应的饮料就送出来。
(每次只投入一个硬币,只按下一种饮料的按钮。
)
②如投入5角的硬币,按下按钮后,总有饮料送出。
③若售货机没有零钱找,则【零钱找完】的红灯会亮,这时再投入1元硬币并按下按钮后,饮料不送出来而且1元硬币也退出来。
④若有零钱找,则【零钱找完】的红灯不会亮,若投入1元硬币及按饮料按钮,则送出饮料的同时找回5角硬币。
(1)找出基本流和备选流
(2)构造场景
(3)设计测试用例
场景法:
参考答案:
根据事件流描述,构造事件流图
根据事件流图,构造场景覆盖从用例开始到结束的路径
实验2参考答案
(1)分析基本流和备选流
投入5角钱,按下【橙汁】或【啤酒】的按钮,则相应的饮料就送出来。
①备选流1:
【零钱找完】的红灯没亮,若投入1元硬币及按饮料按钮,则送出饮料的同时找回5角硬币。
②备选流2:
【零钱找完】的红灯亮,这时投入1元硬币并按下按钮后,饮料不送出来且1元硬币也退出来。
(2)分析场景
场景1:
基本流
场景2:
备选流1
场景3:
备选流2