这周和小伙伴结对构造程序,来深刻理解软件测试中,bug发现的三种状态。

1:不能触发Fault

2:触发Fault,但是不能触发Error

3:触发Error,但是不能产生Failure

我们完成的代码如下:

package test;

import java.util.Scanner;

public class Work1 {

    public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner input=new Scanner(System.in);
int number[]=new int[7];
System.out.println("请输入7个数");
for(int i=0;i<7;i++)
{
number[i]=input.nextInt();
}
for(int i=0;i<number.length;i++)
{
System.out.printf(number[i]+",");
}
System.out.printf("number.length:"+number.length+"\n");
double sum=0;
double avg=0.0;
int m=1;
//1:不能触发Fault if(m==2)
{
for(int i=1;i<number.length;i++)//Fault
{
sum+=number[i];
}
}
//avg=sum/(number.length*1.0);
System.out.println("Fault:sum:"+sum+",avg:"+avg);
//2:触发Fault,但是不能触发Error
sum=0;
for(int i=1;i<number.length;i++)//触发Fault,但是不能触发Error
{
sum+=number[i];
}
avg=sum/number.length;
System.out.println("触发Fault,但是不能触发Error:sum:"+sum+",avg:"+avg);
//3:触发Error,但是不能产生Failure
sum=0;
for(int i=1;i<number.length;i++)//触发Error,但是不能产生Failure
{
sum+=number[i];
}
avg=sum/number.length;
System.out.println("触发Error,但是不能产生Failure:sum:"+sum+",avg:"+avg);
input.close();
} }

输入输出结果如下:

结对项目3-bug的三种状态-LMLPHP

结对项目3-bug的三种状态-LMLPHP

在课堂上听老师讲可能自己理解的并不那么深刻,通过和小伙伴结对讨论完成编程的方法,能够理解的更透彻。

05-11 20:41