边界值分析法+场景法

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 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 void main() {

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

填入测试数据

步骤

根据设计的矩阵结果,选择相应的测试数据

相关文档
最新文档