软件测试---NextDate函数---测试用例详解
- 格式:ppt
- 大小:2.11 MB
- 文档页数:20


软件测试实验3
广东海洋大学学生实验报告书
实验名称实验三黑盒测试(2)课程名称软件测试成绩
学院(系)软件学院专业软件工程班级
学生姓名学号实验地点实验日期
一、实验目的:
1. 掌握黑盒测试方法中的等价类划分方法和边界值分析方法。
2. 掌握组合分析工具Pict的使用
二、实验内容:
1.编写NextDate()函数,结合等价类划分方法和边界值分析方法来设计测试用例,并运行测试验
证是否存在缺陷。
(详细代码在后面的附录中)
测试程序源代码已检查
下面是对NextDate程序划分等价类:
●年份在1900-2010内(含边界)
●月份在1-12月内(含边界)
●闰年二月29天
●输入必须是整数
●输入月份对应天数一定
●输入必须是八个数
有效等价类无效等价类
年份在1900-2010内(含边界)(1) 1.年份小于1900(7)
2.年份大于 2010(8)
输入必须为整数(2)输入非整数(9)
输入月份在1-12内(含边界)(3) 1.月份小于1(10)
2.月份大于12(11)
输入闰年2月29天(4)输入闰月无29号(12)
输入月份正确天数(5)输入日期不与月份对应(13) 输入为八个数(6) 1.输入大于八个数(14)
2.输入小于八个数(15)
根据等价类划分测试用例:
测试用例覆盖等价类
19010331 (1)(2)(3)(5)(6)
20000229 (1)(2) (3)(4)(5)(6)
19010228 (1)(2)(3)(5)(6)
18990130 (7) (2) (3) (5) (6)
20110130 (8)(2)(3)(5)(6)
*asd1238 (1)(9)(3)(5)(6)
19010030 (1)(2)(10)(5)(6)
19011330 (1)(2)(11)(5)(6)
19010229 (1)(2)(3)(12)(5)(6)
19010332 (1)(2)(3)(13)(6)
1 / 11 实验二、黑盒测试技术(二)
一、 实验类型
实验类型为验证型,2个学时。
二、 实验目的
(1) 能熟练应用边界值和决策表测试技术进行测试用例设计;
(2) 对测试用例进行优化设计;
三、 背景知识
(一)边界值测试
1. 边界值分析
边界值分析是考虑边界条件而选取测试用例的一种功能测试方法。边界值分析关注输入空间的边界,以标识测试用例,因为错误更可能出现在输入变量的极值附近。
边界值分析的基本思想是:使用在最小值、略高于最小值、正常值、略低于最大值和最大值处取输入变量值。
2.健壮性测试
健壮性是指在异常情况下,软件还能正常运行的能力。健壮性考虑的主要部分是预期输出,而不是输入。
健壮性测试是边界值分析的一种简单扩展。除了变量的5个边界分析取值还要考虑略超过最大值(max)和略小于最小值(min)时的情况。
3. 最坏情况测试
最坏情况测试将意味着更大工作量,n变量函数的最坏情况测试会产生5的n次方个测试用例,而边界值分析只产生4n+1个测试用例。
(二)基于决策表的测试
决策表适合描述不同条件集合下采取行动的若干组合的情况。使用决策表标识测试用例,则把条件解释为输入,行动解释为输出。有时条件最终引用输入的等价类,行为引用被测试软件的主要功能处理部分,规则解释为测试用例。
对于有限条目决策表,如果有n个条件,则必须有2条规则。如果不关心条目实际地说明条件是不相关的,则没有不关心条目的规则统计为1条规则,规则中每出现一个不关心条目,该规则数乘一次2。
四、 实验设备
主流PC机一套,要求安装windows操作系统、Visual Studio2010或Eclipse开发工具和OFFICE工具
2 / 11 五、 实验容
NextDate函数
根据下面给出的规格说明,分别利用决策表方法,给出足够的测试用例并根据用例执行测试。
NextDate函数包含三个变量:Month(月份)、day(日期)和year(年),函数的输出为输入日期后一天的日期。例如,输入为2007年9月9日,则函数的输出为2007年9月10日。要求输入变量month、day和year均为整数,并且满足以下条件:(1)1<=month<=12;(2)1<=day<=31;(3)1912<=year<=2050
题目要求
NextDate 函数包含三个变量:month 、 day 和 year ,函数的输出为输入日期后一天的日期。 例如,输入为 2006年3月 7日,则函数的输出为 2006年3
月8日 。要求输入变量 month 、 day 和 year 均为整数值,并且满足下列条
件: ①1≤month≤12
②1≤day≤31 ③1920≤year≤2050
等价类划分
第一步:划分等价类
第二步:为有效等价类设计测试用例
测试用例覆盖
第三步:为每一个无效等价类至少设计一个测试用例
输入以及外部条
件 有效等价类 编号 无效等价类 编号
输入三个数 1≤month≤12 1 month<1和month>12
1≤day≤31 2 day<1 和day>31
1920≤year≤2050 3 year<1920 和year>2050
测试数据 期望结果 覆盖等价类编号
测试数据 期望结果 覆盖等价类编号
黑盒测试:决策表法实例分析
采用决策表法对NextDate问题设计测试用例
NextDate (int month, int day, int year)函数规定:输入三个整数:month、day和year,函数的输出为输入日期后一天的日期。例如,输入为2006年3月7日,则函数的输出为2006年3月8日,year满足1920≤year≤2050。
步骤如下:
1)构造决策表
●M1={月份:30天/月},
M2={月份: 31天/月,12月除外},
M3={月份: 12月},M4={月份: 2月}
●D1={日期:1<=日<=27},
D2={日期:日=28},
D3={日期:日=29} ,
D4={日期:日=30},
D5={日期:日=31}
●Y1={年:闰年},Y2={年:平年}
注:二月:平年28天,闰年29天
条件桩:
●C1:月份在{M1,M2,M3,M4}中之一
●C2:日期在{D1,D2,D3,D4 ,D5}中之一
●C3:年在{Y1,Y2}中之一
动作桩:
●A1:不可能
●A2:日期增1
●A3:日期复位(置1)
●A4:月份增1
●A5:月份复位(置1)
●A6:年增1
1 2 3 4 5 6 7 8 9 10
C1:月 M1 M1 M1 M1 M1 M2 M2 M2 M2 M2
C2:日 D1 D2 D3 D4 D5 D1 D2 D3 D4 D5
C3:年
A1:不可能 √
A2:日期+1 √ √ √ √ √ √ √
A3:日期复位
(置1) √ √
A4:月份+1 √ √
A5:月份复位
(置1 )
A6:年+1
11 12 13 14 15 16 17 18 19 20 21 22
C1:月 M3 M3 M3 M3 M3 M4 M4 M4 M4 M4 M4 M4