【课后习题篇】

1. 以下代码是判断输入的年份是否为闰年,设计判定覆盖和条件覆盖的测试用例.(P206)

 

 

if(year<0){
return -1;
}
if((year%4==0&&year%100!=0)||(year%400==0))
{
return 1;
}
else
{
return 0;
}
}

判定覆盖

测试数据  
操作步骤 数据 期望结果 实际结果 测试状态
1 year=-12 数据不满足要求 非法数据 YF
2 year=1968 满足判定闰年条件(能整除4且不能被整除100) 是闰年 YT,AT,BF
3 year=2000 满足判定闰年条件(能整除400) 是闰年 YT,AF,BT

 

 

 

 

 

 

条件覆盖

测试数据  
操作步骤 数据 期望结果 实际结果 测试状态
1 year=-12 数据不满足要求 非法数据 DF
2 year=1968 满足判定闰年条件(能整除4且不能被整除100) 是闰年 DT,AT,BT,CF
3 year=2000 满足判定闰年条件(能整除400) 是闰年 DT,AF,BF,CT

 

 

 

 

 

 

 

2. 以下代码用于判断闰年,由C语言书写,其对应的控制流图如图7-14所示。请按要求回答问题(P207)

int isLeap(int year)

int leap;

  if(year % 4 = = 0)

  {

    if(year % 100 = = 0)

     {

      if(year % 400 = =0)

       leap = 1;

   else

       leap = 0;

      }

     else

          leap = 1;

    }

   else

         leap = 0;

   return leap;

}                                                                                    

  1. V(G)=4
  2. Path1:1-2-10-11-12                 Path2: 1-2-3-8-9-11-12                  Path3: 1-2-3-4-6-7-9-11-12              Path4: 1-2-3-4-5-7-9-11-12
  3. 测试用例

    条件

    输出

    用例1

    输入1000-2001之间能被4整除的数

    1004,1020

    用例2

    输入1000-2001之间能被4整除但不能被100整除的数

     1880,1968

    用例3

    输入1000-2001之间能被400整除的数

     1200,1600

 

 

 

 

 

 

 

 

 

 

3. 某公司招聘人员,其要求为学历本科及以上,专业为计算机、通信、通信、自动化,年龄22~30岁。请划分出各条件的有效等价类和无效等价类

输入条件

有效等价类

无效等价类

学历

本科及以上

本科以下(不包括本科)

专业

计算机、通信、自动化

其他专业

年龄

22~30岁

22岁以下/30岁以上

posted @ 2018-04-19 19:43  孔玥  阅读(317)  评论(0编辑  收藏  举报