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

这周和小伙伴结对构造程序,来深刻理解软件测试中,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+"
");
        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();
    }

}

输入输出结果如下:

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

原文地址:https://www.cnblogs.com/dongsblog/p/5401231.html