1、其中, 有效等价类为 1800年1月1日到2050年12月3日之间的日期,其中 年份为1800到2050之间的整数;月份为1到12之间的整数;当月份为1、3、5、7、8、10、12时,日为1到31之间的整数,当月份为4、6、9、11时,日为1到30之间的整数,当年份为闰年元份为2时,日为1到29之间的数值,否则为1到28之间的数值。无效等价类:1800年1月1日之前的日期;2050年12月3日之后的日期;1800年1月1日到2050年12月31日之间的日期,但是月份不为1到12之间的整数;或者当月份为1、3、5、7、8、10、12时,日不为1到31之间的整数,当月份为4、6、9、11时,日不为
2、1到30之间的整数,当年份为闰年元份为2时,日为1到29之间的数值,否则为1到28之间的数值。最简单的等价类划分直接以输入条件边界来划分,得到的等价类集合见下表,其中Y1-Y3,M1-M3,D1-D3分别是三个输入条件的相应的等价类的编号。表1:preday问题的等价类划分 等价类 年份 月份 日期 有效等价类 Y1:1800年份2500 M1:1月份12 D1:1日期31 无效等价类 Y2:年份1800 M2:月份1 D2:日期2050 M3:月份12 D3:日期31 根据表1的等价类划分,无效等价类测试可以得到如表2的测试用例,而较为合理的有效等价类的划分如表3。三个输入各自具有不同的有效
3、等价类数目,若从每个等价类中选择一个典型值,则年份、月份和日期的取值个数分别为2、4、4,中各选两个典型值。Y2和Y1这时将年份的水平值加以扩展,即对于年份,可在这样得到所有输入条件的取值如下:年份:1850、1900、2000、2004 月份:1、3、5、11 日期:1、29、30、31 此时,构成的有效等价类测试用例如表4所示:表2:Preday的无效等价类的测试用例 ID 输入日期 操作步骤 预期输出 实际输出 备注 -(年-月 日)ND-001 1700-6-15 输入年月日,点提示“请输入一个在请输年份在在入一个击“计算”按钮 1800和18002500之间的整和2500之间Y2中
4、的整数数” ND-002 3000-12-15 输入年月日,点请输入一个在提示“请输入一个在年份在击“计算”按钮 1800Y3中 和25001800和2500之间之间的整 的整数 数” 1-15ND-003 19891请输入一个在1和月份在提示“请输入一个在输入年月日,点 击“计算”按钮 M2中 12之间的整数 和12之间的整数” ND-004 1989-13-121月份在1请输入一个在和输入年月日,点提示“请输入一个在 击“计算”按钮 和12之间的整数” 12之间的整数M3中 1989-4-2ND-0051提示“请填入一个在日期在输入年月日,点请填入一个在1和 击“计算”按钮D2中 和313
5、1之间的整数 之间的整数” 1989-4-32ND-006 1输入年月日,点日期在提示“请填入一个在1请填入一个在和 击“计算”按钮 和31D3中 31之间的整数 之间的整数” 表3:较为合理的有效等价类的划分等价类 年份 月份 日期 M1: 5、7、10、12 有效等价类 Y1:1800年份2050,D1:1日期28 且为闰年D2:29 、942050Y2:1800年份,、6、8M2:2、11 且为非闰年M3:1 D3:30 M4:3 D4: :有效等价类测试用例表4ID 输入日期 操作步骤 实际输出 预期输出 -日)()(日(年-月-) 年-月-日 年-月 1850-1-11849-12-
6、31 ND-007 1849-12-31 输入年月日,点击“计算”按钮 1850-3-291850-3-28. ND-0081850-3-28.同上 1850-5-29 ND-009 1850-5-291850-5-30同上 ND-010not 11 The month Can 1850-11-31同上输 不入日期合法 have 31 days. 的合理提示 ND-011 1900-1-28 1900-1-281900-1-29同上 ND-0121900-3-29 1900-3-30 1900-3-29同上 1900-5-30ND-013 1900-5-301900-5-31同上 1900-1
7、0-31 1900-10-31 ND-0141900-11-1 同上ND-015 ND-016 2000-1-30 2000-3-31 同上 同上2000-1-28 2000-3-302000-1-28 2000-3-30 ND-017 ND-018 ND-019 2000-5-1 2000-11-292004-1-31 同上 同上 同上2000-4-30 2000-11-28 2004-1-30 ND-020 ND-021 ND-022 2004-2-12004-5-29 2004-11-30 2004-1-312004-5-28 2004-11-29 2004-1-31 2004-5-28
8、 2004-11-29 2.2.2边界值法 根据preday的有效输入日期可以设置边界值法的测试用例取值如下, 1800、1801、2049、2050 1、2、11、12 1、2、30、31 此时,构成的边界值法测试用例如表5所示。表5:边界值法测试用例 ID 输入日期 年(-月-日)操作步骤 预期输出 日) -(年-月实际输出 (年-月-日) ND-023 1800-1-1 输入年月日,点击“计算”按钮输入日期超出范围 的合理提示Reach the min date. ND-024ND-025 1800-2-1 1800-11-301800-1-31 1800-11-29 ND-026ND-
9、027 1800-12-31 1801-1-2 1800-12-301801-1-1 1800-12-30 1801-1-1 The month 2 1801-2-30 ND-028 Can not 输入日期不合法的同上 ND-0291801-11-31ND-0301801-12-1 2049-1-30 ND-0312049-2-31 ND-032 同上 have 30 days. 合理提示The month 11 Can not 输入日期不合法的 同上have 31 days. 合理提示1801-11-30 1801-11-30 2049-1-29 2049-1-29 The month 2
10、 Can not 输入日期不合法的have 31 days. 合理提示2049-10-312049-11-1 ND-033 2049-10-31 同上ND-034 2049-12-22050-1-31 ND-035 2049-12-1 2050-1-302049-12-1 2050-1-30 ND-036 2050-2-1 2050-1-31 ND-037 2050-11-2 2050-11-12050-11-1 ND-038 2050-12-302050-12-29 2.2.2错误推测法 错误推测法是基于测试人员的经验和直觉来推测系统中可能存在的各种缺陷,有针对地设计测试用例的方法。错误推法
11、的基本思想是列举出系统中所有可能 的缺陷和容易发生缺陷的特殊情况,并根据他们选择测试用例。 所示。preday错误推测法测试用例设计如表6程序表6:错误推测法测试用例 ID 输入日期 操作步骤 预期输出 实际输出 备注 日)(年- (年-月-日)月日(年-月-) -Ver1-Bug0001 ND-039 所有的接文本无 如图无 1 框都清零Ver1-Bug00021800-11-30 ND-040 1800-12-0 输入年月日,无点击“计算” 按钮ND-041 1989-8-1 1989-7-31 1989-7-30 Ver1-Bug0003 同上 1800-1-1ND-042输 出“最小输
12、入日期Reach 通过 同上 the min date.”的合理提示 2050-12-302050-12-302050-12-31 ND-043通过 同上 2000-2-29 ND-0442000-3-1 2000-2-29通过 同上 Ver1-Bug0004ND-045 2000-1-29 2000-0-0 同上无 黑盒软件测试用例的执行 2.3.1 Ver1-Bug0001 运行程序后,界面上的年、月、日输入框内的数据没有清空。如图1所示:2.3.2 Ver1-Bug0002 输入日期1800-12-0后,会跳出输入日期不合法提示的警告信息,如图2所示,点击确定后能得到前一天的日期并显示在
13、对话框内,如图3所示:2.3.3 Ver1-Bug0003 输入1989年8月1日后点击确定按钮后显示的日期是1989-7-30,实际上7月是有31天的,即程序显示的日期不正确,程序运行如图4所示:2.3.3 Ver1-Bug0004 输入日期2000-0-0后,会跳出“请填入一个在1和12之间的整数”的警告信息,如图5所示,点击确定后能在对话框内显示20001-29,如图6所示: 1图 图2 图3 图4 图5 图6 软件缺陷报告的设计 缺陷报告 缺陷名称:显示错误的日期 缺陷编号ID: Ver1-Bug0003 报 告 人:曹 洪 报告时间: 2010-11-3 部 门:营业部 客服B组 发 现 人:曹 洪 发现时间: 2010-11-1 泉海潮公司 发现场所:泉海潮公司 软件工具实验室501 软件系统名: preda
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1