版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
-.z.软件测试实验报告题目:决策表法的使用**::教师:东南大学成贤学院电子与计算机工程学院2017年9月30日方案30%设计30%文字表述20%分析与总结20%总分实验题目1、实验容Ne*tDate函数包含三个变量: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。整体设计思路:Ne*tDate函数中包含了定义域各个变量之间的依赖问题。等价类划分法和边界值分析法只能“独立地〞选取各个输入值,不能表达出多个变量的依赖关系。决策表法则是根据变量间的逻辑依赖关系设计测试输入数据,排除不可能的数据组合,很好地解决了定义域的依赖问题。5、详细设计Ne*tDate函数求解给定*个日期的下一个日期的可能操作〔动作桩〕如下:变量day加1操作;变量day复位操作;变量month加1操作;变量month复位操作;变量year加1操作。根据上述动作桩发现Ne*tDate函数的求解关键是日和月的问题,通常可以在下面等价类〔条件桩〕的根底上建立决策表: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输入变量间存在大量逻辑关系的Ne*tDate函数决策表规则选项1234567891011条件:C1:
month在M1M1M1M1M1M2M2M2M2M2M3C2:
day在D1D2D3D4D5D1D2D3D4D5D1C3:
year在-----------动作:A1:
不可能√A2:
day加1√√√√√√√√A3:
day复位√√A4:
month加1√√A5:
month复位
规则选项1213141516171819202122条件:C1:
month在M3M3M3M3M4M4M4M4M4M4M4C2:
day在D2D3D4D5D1D2D2D3D3D4D5C3:
year在-----Y1Y2Y1Y2--动作:A1:
不可能√√√A2:
day加1√√√√√A3:
day复位√√√A4:
month加1√√A5:
month复位√A6:year加1√表2简化的Ne*tDate函数决策表:
选项规则1,2,3456,7,8,91011,12,13,1415161718192021,22条件:C1:
month在M1M1M1M2M2M3M3M4M4M4M4M4M4C2:
day在D1,D2,D3D4D5D1,D2,D3,D4D5D1,D2,D3,D4D5D1D2D2D3D3D4,D5C3:
year在--------Y1Y2Y1Y2-动作:A1:
不可能√√√A2:
day加1√√√√√A3:
day复位√√√√√A4:
month加1√√√√A5:
month复位√A6:year加1√6、实验结果与分析表3Ne*tDate函数的测试用例组测试用例MonthDayYear预期输出实际输出Testcase1-351520152015年5月16日Testcase453020152015年5月31日Testcase553120152015年6月1日Testcase6-941520152015年4月16日Testcase1043120152015年5月1日Testcase11-14121520152015年12月16日Testcase15123120152016年1月1日Testcase1621520152015年2月16日Testcase1722820162016年2月29日Testcase1822820152015年3月1日Testcase1922920162016年3月1日Testcase202292015不可能!Testcase21-222302015不可能!7、实验体会与建议程序的实际输出结果与预期结果不符合,但根本满足实验问题需求,基于决策表的测试对于*些应用程序(例如Ne*tDate函数)很有效,但是对另外一些简单的应用程序就不值得使用决策表了。附录代码*include"stdaf*.h"boolNe*tDate(inti,intj,intk){ if(i>=1960&&i<=2050&&j>=1&&j<=12&&k>=1&&k<=31) { if(k>=1&&k<=27) {k++;} else { switch(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++; } else {returnfalse;} break; } case30: { if(j==4||j==6||j==9||j==11) { k=1; j++; } elseif(j==2) {returnfalse;} else {k++;} break; } case29: { if(j==2&&((i%4==0&&i%100!=0)||i%400==0)) { k=1; j++; } elseif(j!=2) {k++;} else {returnfalse;} break; } case28: { if(j==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; whil
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024年四川省广安市广安区中考二模考试道德与法治试题
- 鼻部疾病病人的诊疗与护理考核试题及答案
- 2025年资产评估师职业资格考试真题卷-资产评估行业政策解读
- 2026年社区工作者中级工理论试题及解析
- 企业行政督查考核规定
- 2017年重庆市中考历史试卷
- 老年人中医护理保健
- 腰痛康复训练演示
- 酒精与口腔健康的关系
- 肝硬化患者活动指导
- 2026广东东莞市东城街道办事处招聘编外聘用人员17人(第一批)笔试备考题库及答案解析
- 2026年北京市石景山区初三一模数学试卷(含答案)
- 2026年核科学与技术-通关题库带答案详解(综合卷)
- 2026中国速冻油炸小食行业竞争格局与销售趋势预测报告
- 2026统编版(新教材)小学道德与法治三年级下册各单元、期中、期末测试卷及答案(附全册知识点梳理)
- 贵州省2026年中考模拟物理试题四套附答案
- 压蜡应急预案(3篇)
- 2026年老年养生运动操课件
- 建筑消防设施巡查记录表
- 穿越机知识课件
- 《义务教育道德与法治课程标准》2025 版与2022 版改动情况对比
评论
0/150
提交评论