实验1 黑盒测试用例设计

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

相关文档
最新文档