欢迎来到天天文库
浏览记录
ID:40620247
大小:1.74 MB
页数:20页
时间:2019-08-05
《软件测试NextDate函数测试用例详解》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、主讲:黄老师NextDate函数的用例设计方法授课班级:软件设计班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此函数的主要特点是输入变量之间的逻辑关系比较复杂。复杂性的来源有两个:一个是输入域的复杂性,另一个
2、是指闰年的规则。例如变量year和变量month取不同的值,对应的变量day会有不同的取值范围,day值的范围可能是1~30或1~31,也可能是1~28或1~29。等价类划分法——以输入域划分等价类(1)简单等价类划分测试NextDate函数有效等价类简单等价类划分测试NextDate函数可以划分以下三种有效等价类:M1={month:1≤month≤12}D1={day:1≤day≤31}Y1={year:1912≤year≤2050}无效等价类若条件(1)~(3)中任何一个条件无效,那么NextDate函数都会产生一个输出,指明相应的变量超出取值范围,例如month的值不在1
3、~12范围当中。等价类划分法——以输入域划分等价类显然还存在着大量的year、month、day的无效组合,NextDate函数将这些组合统一输出为:“无效输入日期”。其无效等价类为:M2={month:month<1}M3={month:month>12}D2={day:day<1}D3={day:day>31}Y2={year:year<1912}Y3={year:year>2050}等价类划分法——以输入域划分等价类等价类划分法——以输入域划分等价类一般等价类测试用例如表5-2所示。表5-2NextDate函数的一般等价类测试用例测试用例输入期望输出monthdayyear
4、TestCase19920072007年9月10日健壮等价类测试中包含弱健壮等价类测试和强健壮等价类测试。弱健壮等价类测试弱健壮等价类测试中的有效测试用例使用每个有效等价类中的一个值。弱健壮等价类测试中的无效测试用例则只包含一个无效值,其他都是有效值,即含有单缺陷假设。如表5-3所示。等价类划分法——以输入域划分等价类表5-3NextDate函数的弱健壮等价类测试用例测试用例输入期望输出monthdayyearTestCase19920072007年9月10日TestCase2092007month不在1~12中TestCase31392007month不在1~12中TestCa
5、se4902007day不在1~31中TestCase59322007day不在1~31中TestCase6991911year不在1912~2050中TestCase7992051year不在1912~2050中强健壮等价类测试强健壮等价类测试考虑了更多的无效值情况。强健壮等价类测试中的无效测试用例可以包含多个无效值,即含有多个缺陷假设。因为NextDate函数有三个变量,所以对应的强健壮等价类测试用例可以包含一个无效值,两个无效值或三个无效值。如表5-4所示。等价类划分法——以输入域划分等价类等价类划分法——以输入域划分等价类表5-4NextDate函数的强健壮等价类测试用例
6、测试用例输入期望输出monthdayyearTestCase1-192007month不在1~12中TestCase29-12007day不在1~31中TestCase3991900year不在1912~2050中TestCase4-1-12007变量month、day无效变量year有效TestCase5-191900变量month、year无效变量day有效TestCase69-11900变量day、year无效变量month有效TestCase7-1-11900变量month、day、year无效(2)改进等价类划分测试NextDate函数在简单等价类划分测试NextDat
7、e函数中,没有考虑2月份的天数问题,也没有考虑闰年的问题,月份只包含了30天和31天两种情况。在改进等价类划分测试NextDate函数中,要考虑2月份天数的问题。关于每个月份的天数问题,可以详细划分为以下等价类:M1={month:month有30天}M2={month:month有31天,除去12月}M3={month:month是2月}M4={month:month是12月}D1={day:1≤day≤27}D2={day:day=28}D3={day:day=29}D4={
此文档下载收益归作者所有