软件测试-- Assignment8

Assignment8

问题

构造 NextDate 问题的弱一般的等价类测试用例

NextDate 问题:NextDate() 是整型变量month,dayyear 的函数,输入 1812-2012 年期间的某一日期的 month, dayyear 的值,输出这一天的下一天的日期的 month, dayyear 值。

背景知识(摘自Lec16)

什么是等价类

一个输入等价类是指程序输入域的某个子集,在该子集中,各个输入数据对于揭露程序中的错误时等效的

弱等价类

单缺陷:选取用例时,仅仅使得一个变量取极值,其他变量取正常值

强等价类

多缺陷:选取用例时,同时让多个变量取极值

一般等价类

只覆盖有效等价类

健壮等价类

同时覆盖有效等价类和无效等价类

解答

三个变量的取值范围
  1. C1: 1 ≤ m o n t h ≤ 12 1 \le month \le 12 1month12
  2. C2: 1 ≤ d a y ≤ 31 1 \le day \le 31 1day31
  3. C3: 1812 ≤ y e a r ≤ 2012 1812 \le year \le 2012 1812year2012
划分等价类
输入条件有效等价类无效等价类
yearLeap year (1)
normal year (2)
Year < 1812 (3)
year > 2012 (4)
year is not integer (5)
MonthFebruary (6)
December (7)
Big month with 31 days (8)
small month with 30 days (9)
Month > 12 (10)
month < 1 (11)
month is not integer (12)
dayDay is 28 (13)
day is 29 (14)
day is 30 (15)
day is 31 (16)
day is others(17)
day > 31 (18)
day < 1 (19)
day is not integer (20)
day > 28 when it is February and not Leap year(21)
day > 29 when it is February and leap year(22)
day > 30 when it is small month(22)
测试用例构造
方法:
  • 为每一个等价类规定一个唯一编号
  • 设计一个新的测试用例,使其尽可能多地覆盖尚未被覆盖的有效等价类。重复这一步,直到所有的有效等价类都被覆盖为止
  • 设计一个新的测试用例,使其仅覆盖一个尚未被覆盖的无效等价类,重复这一步,直到所有的无效等价类都被覆盖为止
用例:

弱一般等价类测例,无需考虑无效等价类

Test caseymdexcepted outputcover
WN120202282020.2.29(1)(6)(13)
WN220202292020.3.1(1)(6)(14)
WN320202122020.2.13(1)(6)(17)
WN4202012302021.1.1(1)(7)(15)
WN5202012122020.12.13(1)(7)(17)
WN620201312021.2.1(1)(8)(16)
WN720201122020.1.13(1)(8)(17)
WN820204302021.5.1(1)(9)(15)
WN920204122020.4.13(1)(9)(17)
WN1020212282021.3.1(2)(6)(13)
WN1120212122021.2.13(2)(6)(17)
WN12202112302022.1.1(2)(7)(15)
WN13202112122021.12.13(2)(7)(17)
WN1420211312021.2.1(2)(8)(16)
WN1520211122021.1.13(2)(8)(17)
WN1620214302021.5.1(2)(9)(15)
WN1720214122021.4.13(2)(9)(17)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值