这周和小伙伴结对构造程序,来深刻理解软件测试中,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的三种状态的更多相关文章

  1. 结对编程学习fault、error、failure三种状态

    点滴成就 学习时间 新编写代码行数 博客量(篇) 学习知识点 第一周 10小时 0 0 了解软件工程 第二周 10小时 0 1 项目开题 第三周 15小时 0 1 开通博客.开展项目调查 第四周 20 ...

  2. [cocos2dx笔记015]关于cocos2dx Button三种状态说明

    经过几天的填坑,最终将现有的项目由cocos2dx 2.2.2移到cocos2dx 3.2,差点放弃3.2了,但在最后一刻,又把坑填平了. cocos2dx 2.x到3.x是一个巨大的变化,能够算是全 ...

  3. WPF中CheckBox三种状态打勾打叉和滑动效果

    本文分为两个demo, 第一个demo实现checkBox的打叉或打勾的效果: 第二个demo部分实现checkBox的滑动效果. Demo1: wpf的CheckBox支持三种状态,但是美中不足的是 ...

  4. 1.Git起步-Git的三种状态以及三种工作区域、CVCS与DVCS的区别、Git基本工作流程

    1.Git基础 版本控制系统是一种用于记录一个或多个文件内容变化,以便将来查阅恢复特定版本修订情况的系统. Git是一种分布式版本控制系统(Distributed Version Control Sy ...

  5. Git 深度学习填坑之旅二(文件三种状态、打标签)

    0x01 三种状态 Git 有三种状态,你的文件可能处于其中之一: 已提交(committed).已修改(modified)和已暂存(staged). 已提交表示数据已经安全的保存在本地数据库中. 已 ...

  6. 【转】hibernate对象三种状态

    hibernate里对象有三种状态: 1,Transient 瞬时 :对象刚new出来,还没设id,设了其他值. 2,Persistent 持久:调用了save().saveOrUpdate(),就变 ...

  7. java:Hibernate框架1(环境搭建,Hibernate.cfg.xml中属性含义,Hibernate常用API对象,HibernteUitl,对象生命周期图,数据对象的三种状态,增删查改)

    1.环境搭建: 三个准备+7个步骤 准备1:新建项目并添加hibernate依赖的jar文件  准备2:在classpath下(src目录下)新建hibernate的配置文件:hibernate.cf ...

  8. Hibernate 系列 07 - Hibernate中Java对象的三种状态

    引导目录: Hibernate 系列教程 目录 1. Java对象的三种状态 当应用通过调用Hibernate API与框架发生交互时,需要从持久化的角度关注应用对象的生命周期. 持久化声明周期是Hi ...

  9. hibernate三种状态

    转自:http://www.cnblogs.com/xiaoluo501395377/p/3380270.html 学过hibernate的人都可能都知道hibernate有三种状态,transien ...

随机推荐

  1. jsoncpp 构造空数组

    因为要构造类似如下的 {"FurnitureItemObject":[],"FurniturePlaceItemObject":[],"RoomNum ...

  2. js例子记载

    1.获取项目路径的,不一定有用,仅作参考用: function getRootPath() { var curWwwPath = window.document.location.href; //&q ...

  3. 中点Brehensam画圆算法

    #include<stdio.h> #include<stdlib.h> #include<graphics.h> #include<math.h> v ...

  4. cookie js案例

    //存cokie function setcookie(keys,value,time){ document.cookie=keys+"="+decodeURIComponent( ...

  5. 【Python编程:从入门到实践】chapter8 函数

    chapter8 函数 8.6 将函数存储在模块中 8.6.1 导入整个模块 要让函数是可导入的,的先创建模块.模块 的扩展名为.py的文件 import pizza 8.6.2 到导入特定的函数 f ...

  6. 并发工具类(五) Phaser类

    前言   JDK中为了处理线程之间的同步问题,除了提供锁机制之外,还提供了几个非常有用的并发工具类:CountDownLatch.CyclicBarrier.Semphore.Exchanger.Ph ...

  7. mac mysql中文乱码问题

    God,今天看了好多资料,除了让我命令更熟练以外浪费了好多时间. 遇到的问题:写入数据库有中文的时候,显示??? 最后解决办法: 1.打开终端,输入: mysql -u root -p,然后输入mys ...

  8. Java面向对象技术

    问题及答案来源自<Java程序员面试笔试宝典>第四章 Java基础知识 4.2面向对象技术 1.面向对象与面向过程有什么区别? 看下面一个实例即可: 面向过程就是分析出解决问题所需要的步骤 ...

  9. nagios - 环境搭建

    ㈠ 公共服务监控 ㈡ 实现资源监控 ㈢ 图形化MRTG =============================== nagios-安装 安装前准备 创建用户和用户组 # groupadd -r n ...

  10. python装饰器(docorator)详解

    引言: 装饰器是python面向对象编程三大器之一,另外两个迭代器.生成器只是我现在还没有遇到必须使用的场景,等确实需要用到的时候,在补充资料:装饰器在某些场景真的是必要的,比如定义了一个类或者一个函 ...