欢迎来到天天文库
浏览记录
ID:28570931
大小:149.50 KB
页数:6页
时间:2018-12-11
《白盒测试实例日期.doc》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、白盒软件测试实验一一、实验目的通过简单程序白盒测试,熟悉测试过程,对软件测试行程初步了解,并养成良好的测试习惯。熟练掌握如何运用基路径测试方法进行测试用例设计,初步熟悉如何利用程序插装技术进行逻辑覆盖率分析。二、实验内容背景:被测测试程序功能:计算被输入日期是星期几;程序定义:已知公元1年1月1日是星期一,只要输入年月日,能自动回复当天是星期几;测试环境:Windowsvista、DevC++;说明:本次测试采用插装测试法,由于程序简单,手动输入测试用例。程序说明:A程序思路:计算输入日期与公元1年1月1日所相差的天数,具体如下:总天数=公元1年到输入日期上
2、一年年底天数+输入年份的1月到上月月底天数+输入日期的天数B闰年满足条件(year%4==0)&&(year%100!=0)
3、
4、(year%400==0)(1)分析各种输入情况,结合程序输出结果,进行等价类划分,并给出详细测试用例;(2)根据(1)所划分的等价类,进行边界值分析,并给出具体的测试用例;(3)决策表测试法;①列出输入变量month、day、year的有效等价类;(条件桩)②分析程序的规格说明,给出问题规定的可能采取操作;(动作桩)③画出决策表(简化);④根据决策表,给出详细测试用例。代码:(被测部分为while循环内部语句)#include
5、ostream>usingnamespacestd;intmain(){intx=1,year,month,day;while(x){1.inti,num=0,total,total1,total2;2.cout<<"请输入年份:";3.cin>>year;4.cout<<"请输入月份:";5.cin>>month;6.cout<<"请输入日期:";7.cin>>day;//求得输入年份之前一年末的总天数8.for(i=1;i6、7、(i%400==0))10.num++;}11.total8、1=365*(year-num-1)+366*num;//求得输入年份的总天数12.if((year%4==0)&&(year%100!=0)9、10、(year%400==0)){//求得输入月份之前一月末的总天数13.switch(month){case1:total2=0;break;case2:total2=31;break;case3:total2=60;break;case4:total2=91;break;case5:total2=121;break;case6:total2=152;break;case7:total2=182;break;case11、8:total2=213;break;case9:total2=244;break;case10:total2=274;break;case11:total2=305;break;case12:total2=335;break;}}else{14.switch(month){case1:total2=0;break;case2:total2=31;break;case3:total2=59;break;case4:total2=90;break;case5:total2=120;break;case6:total2=151;break;case7:total12、2=181;break;case8:total2=212;break;case9:total2=243;break;case10:total2=273;break;case11:total2=304;break;case12:total2=334;break;}}//在加上输入的日,求其总和可得到从公元1年1月1日到输入日期当天的总天数15.total=total1+total2+day;16.intweek;17.week=total%7;18.cout<<"您输入的日期是";19.switch(week){case0:cout<<"星期天"<13、break;case1:cout<<"星期一"<>x;}}2、测试用例设计1)控制流图2)环路复杂度计算因为控制流图非强连通图14、,所以不能用公式:V(G)=e-n+2;从图可知环路
6、
7、(i%400==0))10.num++;}11.total
8、1=365*(year-num-1)+366*num;//求得输入年份的总天数12.if((year%4==0)&&(year%100!=0)
9、
10、(year%400==0)){//求得输入月份之前一月末的总天数13.switch(month){case1:total2=0;break;case2:total2=31;break;case3:total2=60;break;case4:total2=91;break;case5:total2=121;break;case6:total2=152;break;case7:total2=182;break;case
11、8:total2=213;break;case9:total2=244;break;case10:total2=274;break;case11:total2=305;break;case12:total2=335;break;}}else{14.switch(month){case1:total2=0;break;case2:total2=31;break;case3:total2=59;break;case4:total2=90;break;case5:total2=120;break;case6:total2=151;break;case7:total
12、2=181;break;case8:total2=212;break;case9:total2=243;break;case10:total2=273;break;case11:total2=304;break;case12:total2=334;break;}}//在加上输入的日,求其总和可得到从公元1年1月1日到输入日期当天的总天数15.total=total1+total2+day;16.intweek;17.week=total%7;18.cout<<"您输入的日期是";19.switch(week){case0:cout<<"星期天"<13、break;case1:cout<<"星期一"<>x;}}2、测试用例设计1)控制流图2)环路复杂度计算因为控制流图非强连通图14、,所以不能用公式:V(G)=e-n+2;从图可知环路
13、break;case1:cout<<"星期一"<>x;}}2、测试用例设计1)控制流图2)环路复杂度计算因为控制流图非强连通图
14、,所以不能用公式:V(G)=e-n+2;从图可知环路
此文档下载收益归作者所有