内容发布更新时间 : 2024/12/23 17:09:44星期一 下面是文章的全部内容请认真阅读。
黑盒测试
(一)实验目的
1.掌握用边界值方法设计测试用例和执行测试的过程; 2.掌握用等价划分方法设计测试用例和执行测试的过程; (二)实验内容
测试“NextDate”函数。NextDate返回输入日期后面的那个日期。变量年、月、日都 具有整数值,且满足如下条件: C1: 1912≤年份≤2050 C2: 1≤月份≤12 C3: 1≤日期≤31 (三)实验步骤
用熟悉的语言(如C 语言)编写实现该函数的功能,并用如下方法设计测试用例,进行黑盒测试。参考源代码: #include
intnextDate(intyear,intmonth,int day); void main() {
//int year, month,day; nextDate(2051,12,30); }
intnextDate(intyear,intmonth,int day) {
/*如果还有明天,返回1; 如果输入不合法,返回-1; */
switch (month) {
case 1: case 3:case 5:case 7:case 8:case 10 : if(day==31) {
day=1;
month=month+1; } else
day=day+1; break;
case 4:case 6:case 9:case 11: if(day==30) {
day=1;
month=month+1; } else
day=day+1; break; case 12: if(day==31) {
day=1; month=1; year=year+1; if(year==2012)
printf(\}
else if(day<31) {
day=day+1; }
break; case 2: {
if(day==28)
if(((year%4==0 && year0!=0) || year@0==0)) {
day=29; } else {
day=1; month=3; }
else if(day==29) {
day=1; month=3; }
else if(day<28) {
day=day+1; } else
printf(\二月没有%d 号!\\n\}
break; default: ; }
if(year>=1912&&year<=2050&&month<=12&&month>=1&&day<=31&&day>=1) {
printf(\下一天是%d 年%d 月%d 日\\n\return 1; }
else if(year<1912||year>2050) {
printf(\请输入指定值内的年\\n\}
else if(month>12||month<1) {
printf(\请输入指定值内的月\\n\}
else if(day>31||day<1)
《软件测试》指导书 4
{
printf(\请输入指定值内的日\\n\}
return -1; }
1.用边界值方法设计测试用例,填写测试用例表; 根据输入变量取值范围,给出健壮性测试用例: C1: 1912≤年份≤2050 C2: 1≤月份≤12 C3: 1≤日期≤31
2.用等价类划分方法设计测试用例,填写测试用例表; 假设如下的等价类
M1={月份:每月有30 天} M2={月份:每月有31 天} M3={月份:此月是2 月} D1={日期:1<=日期<=28} D2={日期:日期=29} D3={日期:日期=30} D4={日期:日期=31}