软件测试技术基础
期末作业
课程名称:开课时间: 20~20第学期
指导教师:学生姓名:班级学号:#include
#include
class bx{
public:
int n; //年龄
int j; //点数阀值
int g; //安全驾驶折扣
int k; //驾照点数
double i; //年龄系数
double sum; //保险费用总额
public:
int getnl(); //判定年龄阶段函数
intgetds(); //判定驾照点数k是否小于点数阀值j函数
bool nl(int n); //判断年龄是否合法
bool ds(int n); //判断驾照点数是否合法
};
bool bx::nl(int n){
if(16<=n && n<=100) //年龄的范围是16-100
{
if(16<=n && n<25) //根据年龄n判定年龄系数i和点数阀值j
{
i=2.8;
j=1;
}
else if(25<=n && n<35)
{
i=1.8;
j = 3;
}
else if(35<=n && n<45)
{
i=1.0;
j = 5;
}
else if(45<=n && n<60)
{
i=0.8;
j = 7;
}
else
{
i=1.5;
j = 5;
}
return 1;
}
else
return 0;
}
bool bx::ds(int k){
if(0<=k && k<=12) //驾照点数的范围是0-12
{
if(k<=j) //根据驾照点数k是否小于等于点数阀值j判定是否给予安全驾驶折扣g
{
if(j==1 && i==2.8) //根据点数阀值j和年龄系数i判定应给予多少安全驾驶折扣g
{
g=50;
}
else if(j==3 && i==1.8)
{
g=50;
}
else if(j==5 && i==1.0)
{
g=100;
}
else if(j==7 && i==0.8)
{
g=150;
}
else
{
g=200;
}
}
else
g = 0;
return 1;
}
else
return 0;
}
int bx :: getnl()
{
cout<
cin>>n;
cin>>k;
bool bl1 = nl(n);
while(!bl1) //判断输入的年龄是否合法
{
cout<
cin>>n;
bl1 = nl(n);
}
bool bl2 = ds(k);
while(!bl2) //判断输入的驾照点数是否合法
{
cout<
cin>>k;
bl2 = ds(k);
}
return 1;
}
main()
{for(int ii=1;ii<100;ii++)
{cout<
bx bxfy;
bxfy.getnl();
bxfy.sum=500*bxfy.i-bxfy.g; //计算保险费用总额
cout<
}
}
2、测试方法:
(1)基于边界值分析法的测试
测试用例的选取:
测试用例