版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、软件测试实验报告题目:决策表法的使用学号:姓名:教师:东南大学成贤学院电子与计算机工程学院2017年9月30日方案30%设计30%文字表述20%分析与总结20%总分实验题目1、实验内容NextDate函数包含三个变量:month(月份)、day(日期)和year(年),函数的输出为输入日期前一天的日期。例如,输入为2007年9月9日,则函数的输出为2007年9月10日。要求输入变量month、day和year均为整数值,并且满足下列条件:(1) 1wmonthw12(2) 1<day<31(3) 1912<year<20502、实验目的与要求分别输入测试用例,判断期望输
2、出与实际输出是否相等3、实验环境操作系统WIN10测试工具VS2010测试语言C+语言4、设计思路分析(包括需求分析、整体设计思路、概要设计)需求分析:此函数的主要特点是输入变量之间的逻辑关系比较复杂。复杂性的来源有两个:一个是输入域的复杂性,另一个是指闰年的规则。例如变量year和变量month取不同的值,对应的变量day会有不同的取值范围,day值的范围可能是130或131,也可能是128或129。整体设计思路:NextDate函数中包含了定义域各个变量之间的依赖问题。等价类划分法和边界值分析法只能“独立地”选取各个输入值,不能体现出多个变量的依赖关系。决策表法则是根据变量间的逻辑依赖关系
3、设计测试输入数据,排除不可能的数据组合,很好地解决了定义域的依赖问题。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:Kday<27D2=day:day=28D3=
4、day:day=29D4=day:day=30D5=day:day=31Y1=year:year是闰年Y2=year:year不是IW年决策表共有22条规则:第15条规则解决有30天的月份;第610条规则解决有31天的月份(除12月份以外);第1115条规则解决12月份;第1622条规则解决2月份和闰年的问题。不可能规则也在决策表中列出,比如第5条规则中在有30天的月份中也考虑了31日。表1输入变量间存在大量逻辑关系的NextDate函数决策表规则选项1234567891011条件:C1:month在M1M1M1M1M1M2M2M2M2M2M3C2:day在D1D2D3D4D5D1D2D3D4
5、D5D1C3:year在动作:A1:不可台匕目匕A2:day加1A3:day复位VVA4:month加1VVA5:month复位规则选项1213141516171819202122条件:C1:month在M3M3M3M3M4M4M4M4M4M4M4C2:day在D2D3D4D5D1D2D2D3D3D4D5C3:year在一一一一一Y1Y2Y1Y2一一动作:A1:不可能VVVA2:day力口1VVVVVA3:day复位VVVA4:month加1VVA5:month复位VA6:year加1V表2简化的NextDate函数决策表:选项规则1,2,3456,7,8,91011,12,131516171
6、8192021,22,14条件:C1:month在M1M1M1M2M2M3M3M4M4M4M4M4M4C2:day在D1,D2,D3D4D5D1,D2,D3,D4D5D1,D2,D3,D4D5D1D2D2D3D3D4,D5C3:year在Y1Y2Y1Y2一动作:A1:不可台匕目匕VVA2:day加1VA3:day复位VVVVVA4:month加1VVVVA5:month复位VA6:year加1V6、实验结果与分析表3NextDate函数的测试用例组测试用例MonthDayYear预期输出实际输出Testcase1-351520152015年5月16日Testcase453020152015年5
7、月31日0请输入年、月、日;2阻55302015/5/31Testcase553120152015年6月1日1请输入年'月、日;29155312015Z6/1Testcase6-941520152015年4月16日11请输入年、月、日:20154152阻5/4/16Testcase1043120152015年5月1日Testcase11-14121520152015年12月16日11请输入年、月、日;201512152O15/12/1&Testcase15123120152016年1月1日a清输入年、月、日1231Wi&ddTestcase1621520152015年2
8、月16日ii请输入年、月、日;20152152015/2/16Testcase1722820162016年2月29日yi请输入年、月、日;2修162282918/2/29Testcase1822820152015年3月1日1请输入年、月、日:2B1522R2015/3/1Testcase1922920162016年3月1日l请输入年、月、日:2016229216/3/1Test case 2022920157、实验体会与建议程序的实际输出结果与预期结果不符合,但基本满足实验问题需求,基于决策表的测试对于某些应用程序(例如NextDate函数)很有效,但是对另外一些简单的应用程序就不值得使用决策
9、表了。附录代码#include""boolNextDate(inti,intj,intk)if(i>=1960&&i<=2050&&j>=1&&j<=12&&k>=1&&k<=31)if(k>=1&&k<=27)k+;elseswitch(k)case31:if(j=1|j=3|j=5|j=7|j=8|j=10)k=1;j+;)elseif(j=12)(k=1;j=1;i+;)elsereturnfalse;break;case30
10、:if(j=4|j=6|j=9|j=11)k=1;j+;elseif(j=2)returnfalse;elsek+;break;case29:if(j=2&&(i%4=0&&i%100!=0)|i%400=0)k=1;j+;elseif(j!=2)k+;elsereturnfalse;break;)case28:(ifO=2&&(i%4=0&&i%100!=0)|i%400=0)(k+;)elseif(j!=2)k+;else(k=1;j+;)break;)else(returnfalse;)cout«i«"/"«j«"/"«k«endl;)intmain()(intday,month,year;while(1)cout<”请输入年、月、曰:"<<endl;cin>&g
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- JR11-PEG3-DOTA-PSMA-03-生命科学试剂-MCE
- 2026年小孩找相同图形测试题及答案
- 2026年高中自感互感测试题及答案
- 2026年师德师风知识测试题及答案
- 2026年c语言二级笔试考试题库及答案
- 2026年古堡逃生测试题及答案
- 2026年宝宝行为测试题及答案
- 2026年小学公式测试题及答案
- 2026年人事管理测试题及答案
- 2026年亚马逊卖家大学测试题及答案
- 2026年辽宁锦州海通实业有限公司度校园招聘28人笔试备考题库及答案详解
- 2026年巨量本地推初级题库
- 摩根士丹利-中国消费:当前消费趋势走向何方?-China Consumer:Where is consumption trending now-20260601
- GB 26396-2026洗涤用品安全技术规范
- T∕CSNAME 131-2025 船用柴油机拉缸故障分析 扭振分析法
- 静脉输液并发症的观察要点与护理
- 2025年江苏省泰州市初二地生会考真题试卷+解析及答案
- 2026年国家开放大学电大《城市管理学》机考终结性套真题道自我提分评估及参考答案详解【综合卷】
- 小学语文一年级下册《荷叶圆圆》大单元跨学科项目式学习整体教学设计
- 2025ERS、EULAR临床实践指南:结缔组织病相关间质性肺疾病解读
- 东南大学2024综评数学试卷
评论
0/150
提交评论