这周和小伙伴结对构造程序,来深刻理解软件测试中,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(); } }
输入输出结果如下:
在课堂上听老师讲可能自己理解的并不那么深刻,通过和小伙伴结对讨论完成编程的方法,能够理解的更透彻。
时间: 2024-11-05 14:45:06