软件测试nextdate程序,软件测试NextDate函数测试用例详解

a7f4a3f590493a1e451dd952a488fd7c.gif软件测试NextDate函数测试用例详解

(20页)

a3a5151a28550017ff920ea8a459f518.gif

本资源提供全文预览,点击全文预览即可全文预览,如果喜欢文档就下载吧,查找使用更方便哦!

14.90 积分

NextDate函数的用例设计方法 主讲:黄老师 授课班级:软件设计班制作者:aTool.org NextDate函数的用例设计方法 n 黑盒测试 n 等价类划分法 n 边界值分析法 n 因果图法 n 决策表法 制作者:制作者:aTool.org Page 2 等价类划分法——以输入域划分等价类 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 此函数的主要特点是输入变量之间的逻辑关系比较复杂。复杂 性的来源有两个:一个是输入域的复杂性,另一个是指闰年 的规则。例如变量year和变量month取不同的值,对应的变 量day会有不同的取值范围,day值的范围可能是1~30或1~ 31,也可能是1~28或1~29。 制作者:制作者:aTool.org Page 3 等价类划分法——以输入域划分等价类 (1)简单等价类划分测试NextDate函数 有效等价类 简单等价类划分测试NextDate函数可以划分以下三种有效等价类: M1={month:1≤month≤12} D1={day:1≤day≤31} Y1={year:1912≤year≤2050} 无效等价类 若条件 (1)~(3)中任何一个条件无效,那么NextDate 函数 都会产生一个输出,指明相应的变量超出取值范围,例如 month 的值不在 1~12 范围当中。 制作者:制作者:aTool.org Page 4 等价类划分法——以输入域划分等价类 显然还存在着大量的 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} 制作者:制作者:aTool.org Page 5 等价类划分法——以输入域划分等价类 一般等价类测试用例如表5-2所示。 表5-2 NextDate函数的一般等价类测试用例 测试 输入 期望输出 用例 month day year Test 9 9 2007 2007年9月10日 Case 1 健壮等价类测试中包含弱健壮等价类测试和强健壮等价类测试。 ? 弱健壮等价类测试 弱健壮等价类测试中的有效测试用例使用每个有效等价 类中的一个值。弱健壮等价类测试中的无效测试用例则只 包含一个无效值,其他都是有效值,即含有单缺陷假设。 如表5-3所示。 制作者:制作者:aTool.org Page 6 等价类划分法——以输入域划分等价类 输入 测试用例 期望输出 month day year Test Case 1 9 9 2007 2007年9月10日 Test Case 2 0 9 2007 month不在1~12中 Test Case 3 13 9 2007 month不在1~12中 Test Case 4 9 0 2007 day不在1~31中 Test Case 5 9 32 2007 day不在1~31中 Test Case 6 9 9 1911 year不在1912~2050中 Test Case 7 9 9 2051 year不在1912~2050中 表5-3 NextDate函数的弱健壮等价类测试用例 制作者:制作者:aTool.org Page 7 等价类划分法——以输入域划分等价类 n 强健壮等价类测试 n 强健壮等价类测试考虑了更多的无效值情况。强健壮 等价类测试中的无效测试用例可以包含多个无效值, 即含有多个缺陷假设。因为NextDate函数有三个变量, 所以对应的强健壮等价类测试用例可以包含一个无效 值,两个无效值或三个无效值。如表5-4所示。 制作者:制作者:aTool.org Page 8 等价类划分法——以输入域划分等价类 n 表5-4 NextDate函数的强健壮等价类测试用例 输入 测试用例 期望输出 month day year Test Case 1 -1 9 2007 month不在1~12中 Test Case 2 9 -1 2007 day不在1~31中 Test Case 3 9 9 1900 year不在1912~2050中 变量month、day无效 Test Case 4 -1 -1 2007 变量year有效 变量month、year无效 Test Case 5 -1 9 1900 变量day有效 变量day、year无效 Test Case 6 9 -1 1900 变量month有效 Test Case 7 -1 -1 1900 变量month、day、year无效 制作者:制作者:aTool.org Page 9 等价类划分法——以输入域划分等价类 n (2)改进等价类划分测试NextDate函数 n 在简单等价类划分测试NextDate函数中,没有考虑2月份的天数问题,也没有考虑 闰年的问题,月份只包含了30天和31天两种情况。在改进等价类划分测试 NextDate函数中,要考虑2月份天数的问题。 n 关于每个月份的天数问题,可以详细划分为以下等价类: n M1={month:month有30天} n M2={month:month有31天, 除去12月} n M3={month:month是2月} n M4={month:month是12月} n D1={day:1≤day≤27} n D2={day:day=28} n D3={day:day=29} n D4={day:day=30} n D5={day:day=31} n Y1={year:year是闰年} n Y2={year:year不是闰年} 制作者:制作者:aTool.org Page 10 等价类划分法——以输入域划分等价类 返回 n 改进等价类划分测试NextDate函数如表5-5所示。 n 表5-5 改进等价类划分法测试用例 输入 测试用例 期望输出 关 键 词: 软件测试NextDate函数测试用例详解 ppt、pptx格式 免费阅读 下载 天天文库

4d91c43bfc72ca913299809b07b4968f.gif 天天文库所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。