结对编程--fault,error,failure
结对编程对象:叶小娟
对方博客地址:http://www.cnblogs.com/yxj63/
双方贡献比例:1:1
结对照片:

结对题目:输入一定个数的数字,对其排序后输出最大值。


1 package com.jkxy.zy.selectsort;
2
3 import java.util.Scanner;
4
5 /**
6 *
7 * 构造程序,分别是:
8 •不能触发Fault。
9 •触发Fault,但是不能触发Error。
10 •触发Error,但是不能产生Failure。*/
11 public class Selectsort {
12
13 public static void main(String[] args) {
14 Scanner input=new Scanner(System.in);
15 System.out.println("请输入你需要输入的数字个数:");
16 int n=input.nextInt();
17 int[] array = new int[n];
18 System.out.println("请输入你需要的数:");
19 for(int i=0;i<n;i++){
20 array[i]=input.nextInt();
21 }
22 if(array.length>1){
23 selectsort(array);
24 }
25 System.out.println("这些数字中的最大值为:"+array[n-1]);
26 }
27
28 public static void selectsort(int[] array){
29 int min, index, temp;
30 for(int i = 1; i < array.length - 1; i++){
31 min = i;
32 //查找选择最小元素值的下标索引值
33 for(index = i + 1; index < array.length; index++){
34 if(array[min] > array[index])
35 min = index;
36 }
37 //交换
38 if(min != i){
39 temp = array[min];
40 array[min] = array[i];
41 array[i] = temp;
42 }
43 }
44 }
45 }

存在fault的代码段:

public static void selectsort(int[] array){
int min, index, temp;
//排序时下标未从0开始,造成fault
for(int i = 1; i < array.length - 1; i++){
min = i;
for(index = i + 1; index < array.length; index++){
if(array[min] > array[index])
min = index;
}
if(min != i){
temp = array[min];
array[min] = array[i];
array[i] = temp;
}
}
}

•不能触发Fault
测试用例: 输入1,4

由于存在 if(array.length>1){selectsort(array);} 分之语句,不会进入fault代码段
•触发Fault,但是不能触发Error
测试用例: 输入5,1 3 7 4 5

输入的数字排序为 1,3,4,5,7;输出最大值为7. 已经进入错误程序段,但是由于第一个数即是他们中最小的,所以排序未出错误。
•触发Error,但是不能产生Failure
测试用例: 输入5,1 3 7 4 5

输入的数字排序为 5,1,3,6,8;输出最大值为8. 已经进入错误程序段,排序出现错误,但是由于后面的数存在大于第一个数的数字,所以输出最大值时依旧是正确的。
总结:这次结对编程比上次困难的多,我们对软件中fault,error,failure 不是很认识和理解。后来经过一起讨论。我们统一了意见,完成了结对编程。我的小伙伴叶小娟同学非常的棒,是一个结对的好搭档。
结对编程--fault,error,failure的更多相关文章
- 结对编程--fault,error,failure的程序设计
一.结对编程内容: 1.不能触发Fault. 2.触发Fault,但是不触发Error. 3.触发Error,但不触发Failure. 二.结对编程人员 1.周浩,周宗耀 2.结对截图: 三.结对项目 ...
- 结对项目——fault,error,failure的程序设计
一.结对编程内容: 1.不能触发Fault. 2.触发Fault,但是不触发Error. 3.触发Error,但不触发Failure. 二.结对编程人员 1.周宗耀.周浩: 2.结对截图: 三.结对项 ...
- 软件测试中的fault,error,failure
问题:给定两段代码,设计fault,error,failure的测试用例. fault:即引起错误的原因,类似病因. error:类似疾病引起的内部结果. failure:类似疾病引起的症状. 代码1 ...
- 结对编程2—Fault&Error&Failure
学习进度表 点滴成就 学习时间 新编写代码行数 博客量(篇) 学到知识点 第一周 8 0 0 了解软件工程 第二周 10 0 1 博文一篇 第三周 15 0 2 选择项目.调查问卷 第四周 20 80 ...
- ST HW2 fault & error & failure
Software Testing 3014218128 牛菲菲 Below are two faulty programs. Each includes a test case that result ...
- 软件测试作业 - fault error failure
给出的题目如下: 我的解答如下: For program 1:1. where i > 0 is the fault , it should be changed to i>= 0 to ...
- 结对编程——关于Fault、Error、Failure程序设计
一.问题描述: 构造程序,分别是: •不能触发Fault •触发Fault,但是不能触发Error •触发Error,但是不能产生Fai ...
- PIE结对编程
学习进度条 点滴成就 学习时间 新编写代码行数 博客量 学到知识点 第一周 8 0 0 了解软件工程 第二周 7 0 1 了解软件工程 第三周 11 0 1 用例图 第四周 6 25 0 结对编程 第 ...
- 结对编程学习fault、error、failure三种状态
点滴成就 学习时间 新编写代码行数 博客量(篇) 学习知识点 第一周 10小时 0 0 了解软件工程 第二周 10小时 0 1 项目开题 第三周 15小时 0 1 开通博客.开展项目调查 第四周 20 ...
随机推荐
- MySQL MHA环境搭建
MHA功能: 1,从故障的mysql保存二进制日志时间(binlog events);2,识别含有最新更新的slave:3,应用差异的中继日志(relay log)到其他的slave:4,应用从mas ...
- appium+python自动化42-微信公众号
前言 本篇介绍如何在微信公众号上自动化测试,以操作我的个人公众号:yoyoketang为例,没关注的,先微信关注了,再跟着操作 环境准备: python 3.6 appium 1.7以上版本 微信6. ...
- java实验四——找鞍点
package hello; public class 实验四 { public static void main(String[] args) { // TODO Auto-generated me ...
- python unittest单元测试框架-1
Test Case.Test Suite.Test Runner.Test Fixture Test Case:单个测试用例 Test Suite:测试组合.可以把多个测试用例集合在一起执行. Tes ...
- 怎样使用 css 的@media print控制打印
怎样使用 css 的@media print控制打印? <HTML> <HEAD> <TITLE> New Document </TITLE> < ...
- idea配置(卡顿、开发环境等配置),code style template
Tomcat配置VM Options: -XX:PermSize=512m -XX:MaxPermSize=1024m 1.IDEA卡顿,修改IDEA使用内存 修改idea配置文件 在IDEA的 ...
- Android之sandbox技术
ART 虚拟机下Hook工具:VirtualHook http://bbs.pediy.com/thread-216786.htm Github: https://github.com/rk700/V ...
- ExtJS模板与菜单的使用案例-床位卡
ExtJS的模板的使用: 项目中场景基本就是表格模型: TPL:自己编写模板 store:数据源 UI组件: tbar,rbr,bbar实现工具栏 PageBar与StatusBar:可以针对TPL的 ...
- php mysql_db_query()函数使用介绍
php mysql_db_query()函数选择一个数据库并在其上执行查询,本文章向大家介绍mysql_db_query()函数的基本使用方法和实例,需要的朋友可以参考一下本文章. mysql_db_ ...
- 并发基础(三) java线程优先级
在不同的JVM中(JVM也算是一个操作系统),有着不同的CPU调度算法,对于大部分的JVM来说,优先级也是调度算法中的一个参数.所以,线程优先级在一定程度上,对线程的调度执行顺序有所影响,但不能用 ...