学习进度表
点滴成就 | 学习时间 | 新编写代码行数 | 博客量(篇) | 学到知识点 |
第一周 | 8 | 0 | 0 | 了解软件工程 |
第二周 | 10 | 0 | 1 | 博文一篇 |
第三周 | 15 | 0 | 2 | 选择项目、调查问卷 |
第四周 | 20 | 80 | 0 | 结对编程 |
第五周 | 25 | 330 | 1 | java的学习、软件工程 |
第六周 | 25 | 210 | 0 | 编译原理、软件工程 |
第七周 | 15 | 0 | 0 | 软件系统设计 |
第八周 | 20 | 256 | 1 | 软件测试、结对编程博文 |
1.题目描述:
构造程序,分别是:
•不能触发Fault。
•触发Fault,但是不能触发Error。
•触发Error,但是不能产生Failure
2.结对编程对象:李丽莎 2013110420
对方博客地址:http://www.cnblogs.com/tripoon/
对方贡献比列:1:1
照片:
3.Fault 静态错误 ,Failure 外部错误 ,Error 内部错误
4.代码:
程序1:求一串数中不能被2整除的个数
package test1; import java.util.Scanner; public class Test1 { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub Scanner input=new Scanner(System.in); System.out.print("请输入要测试的个数:n="); int n=input.nextInt(); System.out.println("请输入要测试的数:"); int[] num=new int[n]; int m; for(int i=0;i<n;i++){ System.out.print("num["+i+"]="); m=input.nextInt(); num[i]=m; // input.next(); } // for(int i=0;i<n;i++){ // System.out.print("num["+i+"]="+num[i]+","); // } // System.out.print("不能被2整除的个数:"+isZhengChu(num)); } public static int isZhengChu(int[] num){ int sum=0; for(int i=0;i<num.length;i++){ if(num[i]%2==0){ break; } sum++; } return sum; } }
(1)fault:应将break改为continue
(2)一个执行了Fault 产生了Error,但没导致Failure
当输入值为num={1,3,2},期望值是:2,结果还是:2
(3)执行Fault,但没返回错误的值
当输入值为num={1,3,5},期望值是:3,结果还是:3
(4)不执行fault
当输入值num={};
程序会直接访问无效内存导致程序挂掉
5.总结
了解了软件测试中的Fault &Failure &Error三种bug之间的区别与联系!
l