黑盒测试实验二

黑盒测试 实验二

1. NextDate函数的边界值分析测试用例

程序有三个输入变量month、day、year(month、day和year均为整数值,并且满足:1≤month≤12、1≤day≤31、1900≤ year ≤2050。),分别作为输入日期的月份、日、年份,通过程序可以输出该输入日期在日历上第二天的日期。例如,输入为2005年11月30日,则该程序的输出为2005年12月1日。请用等价类测试和边界测试法设计测试用例。

等价类测试法:

有效等价类 month、day、year、均为整数值,且1≤month≤12、1≤day≤31、1900≤ year ≤2050。 测试用例为:5 month,10 day,2010 year 预期输出为: 5 month,11 day,2010 year 无效等价类

1、month、day、year、不为整数值,1≤month≤12、1≤day≤31、1900≤ year ≤2050

测试用例为:5.4 month,10 day,2010 year 预期输出为:无效输入

2、month、day、year、均为整数值,不满足1≤month≤12、1≤day≤31、1900≤ year ≤2050三个条件中其中一个。

测试用例为:13 month,10 day,2010 year 预期输出为:无效输入

边界测试法:

测试用例为:1 month,1 day,1900 year 12 month,31 day,2050 year 预期输出为:1 month,2 day,1900 year 预期输出为:无效输入 0 month,1 day,1900 year 13 month,10 day,1900 year 预期输出为:无效输入 预期输出为:无效输入 5 month,0 day,1902 year 5 month,32 day,1903 year 预期输出为:无效输入 预期输出为:无效输入 7 month, 5 day,1899 year 7 month,5 day, 2051 year 预期输出为:无效输入 预期输出为:无效输入 实验代码:

#include

void con() {

if(a>=1900 && a<=2050) {

if(b>0 && b<=12) {

if(b==2) {

if(a%4==0) { }

if(a%4!=0) {

if(c>0 && c<=28) {

if(c==28) {

if(c>0 && c<=29) { } { }

if(c==29) {

printf(\输入的日期是:%d年%d月%d日\\n\,a,b,c); c=1; b=b+1;

printf(\第二天的日期是:%d年%d月%d日\\n\,a,b,c); } else {

printf(\输入的日期是:%d年%d月%d日\\n\,a,b,c); printf(\第二天的日期是:%d年%d月%d日\\n\,a,b,c); }

int a,b,c; printf(\年份:\); scanf(\,&a); printf(\月份:\); scanf(\,&b); printf(\日:\); scanf(\,&c);

else

printf(\输入的天数不在--29之间!\\n\);

} else {

if( b==4 || b==6|| b==9 || b==11) { } else {

if(c>0 && c<=31) if(c>0 && c<=30) { } else { }

printf(\输入的天数不在--30之间!\\n\); c=c+1; if(c>30) { } else { }

printf(\第二天的日期是:%d年%d月%d日\\n\,a,b,c); c=1; b=b+1;

}

} { }

printf(\输入的日期是:%d年%d月%d日\\n\,a,b,c); c=1; b=b+1;

printf(\第二天的日期是:%d年%d月%d日\\n\,a,b,c); } else {

printf(\输入的日期是:%d年%d月%d日\\n\,a,b,c); printf(\第二天的日期是:%d年%d月%d日\\n\,a,b,c); }

else

printf(\输入的天数不在--28之间!\\n\);

printf(\输入的日期是:%d年%d月%d日\\n\,a,b,c);

printf(\第二天的日期是:%d年%d月%d日\\n\,a,b,c);

} else {

} else { }

printf(\输入的月份不在--12之间!\\n\); }

}

{ } else { }

printf(\输入的天数不在--31之间!\\n\);

printf(\输入的日期是:%d年%d月%d日\\n\,a,b,c); c=c+1; if(c>31) { } else { }

printf(\第二天的日期是:%d年%d月%d日\\n\,a,b,c); c=1; b=b+1; if(b>12) { } else { }

printf(\第二天的日期是:%d年%d月%d日\\n\,a,b,c); b=1; a=a+1; if(a>2050) { } { }

printf(\第二天的日期不在到范围之内!\\n\);

else

printf(\第二天的日期是:%d年%d月%d日\\n\,a,b,c);

}

void main() { }

con();

printf(\是否继续(Y|N)?\); char x; scanf(\,&x); if(x=='Y' || x=='y') printf(\); main(); }

printf(\输入的年份不在到范围之内!\\n\);

联系客服:779662525#qq.com(#替换为@) 苏ICP备20003344号-4