- 1、本文档共20页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
软件测试与-NextDate函数
Page ? * 制作者: 制作者: 制作者: 主讲:黄老师 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? 此函数的主要特点是输入变量之间的逻辑关系比较复杂。复杂性的来源有两个:一个是输入域的复杂性,另一个是指闰年的规则。例如变量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~12 范围当中。 等价类划分法——以输入域划分等价类 显然还存在着大量的 year 、 month 、 day 的无效组合, NextDate 函数将这些组合统一输出为:“无效输入日期”。其无效等价类为: M2={month:month1} M3={month:month12} D2={day:day1} D3={day:day31} Y2={year:year1912} Y3={year:year2050} 等价类划分法——以输入域划分等价类 等价类划分法——以输入域划分等价类 一般等价类测试用例如表5-2所示。 表5-2 NextDate函数的一般等价类测试用例 测试用例 输入 期望输出 month day year Test Case 1 9 9 2007 2007年9月10日 健壮等价类测试中包含弱健壮等价类测试和强健壮等价类测试。 弱健壮等价类测试 弱健壮等价类测试中的有效测试用例使用每个有效等价类中的一个值。弱健壮等价类测试中的无效测试用例则只包含一个无效值,其他都是有效值,即含有单缺陷假设。如表5-3所示。 等价类划分法——以输入域划分等价类 表5-3 NextDate函数的弱健壮等价类测试用例 测试用例 输入 期望输出 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中 强健壮等价类测试 强健壮等价类测试考虑了更多的无效值情况。强健壮等价类测试中的无效测试用例可以包含多个无效值,即含有多个缺陷假设。因为NextDate函数有三个变量,所以对应的强健壮等价类测试用例可以包含一个无效值,两个无效值或三个无效值。如表5-4所示。 等价类划分法——以输入域划分等价类 等价类划分法——以输入域划分等价类 表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中 Test Case 4 -1 -1 2007 变量month、day无效 变量year有效 Test Case 5 -1 9 1900 变量month、year无效 变量day有效 Test Case 6 9 -1 1900 变量day、year无效 变量month有效 Test Case 7 -1 -1 1900 变量month、day、year无效 (2)改进等价类划分测试NextDate函数 在简单等价类划分测试NextDate函数中,没有考虑2月份的天数
文档评论(0)