- 1、本文档共11页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
.
软件测试
实验报告
题目 : 决策表法的使用
学号 :
姓名 :
教师 :
东南大学成贤学院电子与计算机工程学院
2017 年 9 月 30 日
方案 30% 设计 30% 文字表述 20% 分析与总结 20% 总分
..
.
实验题目
1、实验内容
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、实验目的与要求
分别输入测试用例,判断期望输出与实际输出是否相等
3、实验环境
操作系统 WIN10
测试工具 VS2010
测试语言 c++ 语言
4、设计思路分析(包括需求分析、整体设计思路、概要设计)
需求分析:
此函数的主要特点是输入变量之间的逻辑关系比较复杂。 复杂性的来源有两个: 一个是输入
域的复杂性,另一个是指闰年的规则。例如变量 year 和变量 month 取不同的值,对应的变
量 day 会有不同的取值范围, day 值的范围可能是 1~ 30 或 1~31,也可能是 1~28 或 1~
29。
整体设计思路:
NextDate 函数中包含了定义域各个变量之间的依赖问题。等价类划分法和边界值分析法只
能“独立地”选取各个输入值, 不能体现出多个变量的依赖关系。 决策表法则是根据变量间
的逻辑依赖关系设计测试输入数据, 排除不可能的数据组合, 很好地解决了定义域的依赖问
题。
5、详细设计
NextDate 函数求解给定某个日期的下一个日期的可能操作(动作桩)如下:
变量 day 加 1 操作;
变量 day 复位操作;
..
.
变量 month 加 1 操作;
变量 month 复位操作;
变量 year 加 1 操作。
根据上述动作桩发现 NextDate 函数的求解关键是日和月的问题, 通常可以在下面等价类 (条件桩)的基础上建立决策表:
M1 = {month : month 有 30 天 }
M2 = {month : month 有 31 天, 12 月除外 }
M3 = {month : month 是 12 月 }
M4 = {month : month 是 2 月}
D1 = {day : 1≤ day≤ 27}
D2 = {day : day= 28}
D3 = {day : day= 29}
D4 = {day : day= 30}
D5 = {day : day= 31}
Y1 = {year : year 是闰年 }
Y2 = {year : year 不是闰年 }
决策表共有 22 条规则:
1~5 条规则解决有 30 天的月份;
6~10 条规则解决有 31 天的月份(除 12 月份以外);
11~15 条规则解决 12 月份;
16~22 条规则解决 2 月份和闰年的问题。
不可能规则也在决策表中列出,比如第 5 条规则中在有 30 天的月份中也考虑了 31 日。
表 1 输入变量间存在大量逻辑关系的 NextDate 函数决策表
规则
1
2
3
4
5
6
7
8
9
10
11
选项
条件:
C1: month
M1 M1 M1 M1 M1 M2 M2 M2 M2 M2 M3
在
..
.
C2: day 在D1
D2
D3
D4
D5
D1
D2
D3
D4
D5
D1
C3: year
- - - - - - - - - - -
在
动作:
A1: 不 可
√
能
A2: day
√ √ √ √ √ √ √ √
1
A3: day
√ √
复位
A4: month
√ √
1
A5: month
复位
规则
12 13 14 15 16 17 18 19 20 21 22
选项
条件:
..
.
C1: month
M3 M3 M3 M3 M4 M4 M4 M4 M4 M4 M4
在
C2: day 在
D2
D3
D4
D5
D1
D2
D2
D3
D3
D4
D5
C3: year 在 - - - - - Y1 Y2 Y1 Y2 - -
动作:
A1: 不可能 √ √ √
A2: day
加
1
√√√
√√
A3: day
复
位
√
√√
A4: month
√ √
1
A5: month
√
复位
A6 :year 加
√
1
2 简化的 NextDate 函数决策表:
6,11,
1,
7,
12,
21,
选项
4
15
16
17
18
19
2,
5
文档评论(0)