软件测试 决策表_第1页
软件测试 决策表_第2页
软件测试 决策表_第3页
软件测试 决策表_第4页
软件测试 决策表_第5页
已阅读5页,还剩6页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、;软件测试实验报告 题目: 决策表法的使用 学号: 姓名: 教师: 东南大学成贤学院电子与计算机工程学院2017年 9 月30 日方案30%设计30%文字表述20%分析与总结20%总分实验题目1、实验内容NextDate 函数包含三个变量:month(月份)、day(日期) 和 year(年),函数的输出为输入日期前一天的日期。 例如,输入为 2007年9月 9日,则函数的输出为 2007年9月10日 。要求输入变量 month 、 day 和 year 均为整数值,并且满足下列条件:(1)1month12(2)1day31(3)1912year2050 2、实验目的与要求分别输入测

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函数的求解关键是日和月的问题,通常可以在下面等价类(条件桩)的基础上建立决策表:M1month:month有30天 M2month:month有31天,12月除外M3month:month是12月M4month:month是2月D1day:1day27D2day:day28D

4、3day:day29D4day:day30D5day:day31Y1year:year是闰年Y2year:year不是闰年决策表共有22条规则:第15条规则解决有30天的月份;第610条规则解决有31天的月份(除12月份以外);第1115条规则解决12月份;第1622条规则解决2月份和闰年的问题。不可能规则也在决策表中列出,比如第5条规则中在有30天的月份中也考虑了31日。表1 输入变量间存在大量逻辑关系的NextDate函数决策表规则选项1234567891011条件:C1: month在M1M1M1M1M1M2M2M2M2M2M3C2: day在D1D2D3D4D5D1

5、D2D3D4D5D1C3: year在动作:A1: 不可能A2: day加1A3: day复位A4: month加1A5: month复位       规则选项12819202122条件:C1: month在M3M3M3M3M4M4M4M4M4M4M4C2: day在D2D3D4D5D1D2D2D3D3D4D5C3: year在Y1Y2Y1Y2动作:A1: 不可能A2: day加1A3: day复位A4:&

6、#160;month加1A5: month复位A6:year加1表2 简化的NextDate函数决策表:     选项规则1,2,3456,7,8,91011,12,13,14021,22条件:C1: month在M1M1M1M2M2M3M3M4M4M4M4M4M4C2: day在D1,D2,D3D4D5D1,D2,D3,D4D5D1,D2,D3,D4D5D1D2D2D3D3D4,D5C3: year在Y1Y2Y1Y2动作:A1: 不可能A2: day加1A3: day复位A

7、4: month加1A5: month复位A6:year加16、实验结果与分析表3 NextDate函数的测试用例组测试用例 MonthDayYear预期输出实际输出Test case 1-351520152015年5月16日Test case 453020152015年5月31日Test case 553120152015年6月1日Test case 6-941520152015年4月16日Test case 15年5月1日Test case11-14121520152015年12月16日Test case 016年1月1日Test case 1621520152015年

8、2月16日Test case 1722820162016年2月29日Test case 15年3月1日Test case 1922920162016年3月1日Test case 202292015不可能!Testcase 21-222302015不可能!7、实验体会与建议程序的实际输出结果与预期结果不符合,但基本满足实验问题需求,基于决策表的测试对于某些应用程序(例如NextDate函数)很有效,但是对另外一些简单的应用程序就不值得使用决策表了。附录代码#include "stdafx.h"bool NextDate(int i,int j,int k)if(i>=1

9、960&&i<=2050&&j>=1&&j<=12&&k>=1&&k<=31)if(k>=1&&k<=27)k+;elseswitch(k)case 31: if(j=1|j=3|j=5|j=7|j=8|j=10)k=1;j+;else if(j=12)k=1;j=1;i+;elsereturn false;break; case 30:if(j=4|j=6|j=9|j=11)k=1;j+;else if(j=2)return false;elsek+;br

10、eak;case 29:if(j=2&&(i%4=0&&i%100!=0)|i%400=0)k=1;j+;else if(j!=2)k+;elsereturn false;break;case 28:if(j=2&&(i%4=0&&i%100!=0)|i%400=0)k+;else if(j!=2)k+;elsek=1;j+;break;elsereturn false;cout<<i<<"/"<<j<<"/"<<k<<endl;int main()int day,month,year;while(1)cout<<"请输入年、月、日:"<<endl;cin>>ye

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论