• 软件测试,Homework2


    软件测试 Homework2

    孙鹏飞

    代码

    • 第一段代码
    public int findLast (int[] x, int y) {
    	//Effects: If x==null throw NullPointerException
    	// else return the index of the last element
    	// in x that equals y.
    	// If no such element exists, return -1
    	for (int i=x.length-1; i > 0; i--){
    		if (x[i] == y){
    			return i;
    		}
    	}
    	return -1;
    }
    // test: x=[2, 3, 5]; y 
    
    • 第二段代码
    public static int lastZero (int[] x) {
    	//Effects: if x==null throw NullPointerException
    	// else return the index of the LAST 0 in x.
    	// Return -1 if 0 does not occur in x
    	for (int i = 0; i < x.length; i++){
    		if (x[i] == 0){
    			return i;
    		}
    	}
    	return -1;
    }
    // test: x=[0, 1, 0]
    // Expected = 2
    

    问题

    问题一,Identify the fault

    • 第一段代码

    for循环的条件中,I应该为 >= 0 , 如果按照题目中 i > 0 ,则最后缺少判断的第二个元素与 y 是否相等。

    • 第二段代码

    代码逻辑错误,如果按照题目中的逻辑,最后找到的是第一个为 0 的元素的位置。

    问题二,identify a test case that does not execute the fault

    • 第一段代码

    test:x=[2,2,4,5,6], y = 2
    Expected: 1
    Actual: 1

    • 第二段代码

    test: x = [1,0,2,3,4,5]
    Expected: 1
    Actual: 1

    问题三,identify a test case that executes the fault, but does not result in an error state.

    • 第一段代码

    text: x = [5,9,8], y = 4
    Expected: 0
    Actual: 0

    • 第二段代码

    test: x = [2,5,0,8],
    Expected: 2
    Actual: 2

    问题四,If possible identify a test case that results in an error, but not a failure.

    • 第一段代码

    test: x = [5,8,9,6,3] , y = 5
    Expected: 0
    Actual: -1

    • 第二段代码

    test: x = [4,5,0,8,9,0]
    Expected: 5
    Actual: 2

  • 相关阅读:
    git升级
    redis集群
    redis安装
    escript
    git搭建仓库与服务器
    svnsync
    post_commit.sh
    nvm安装和使用
    quartz 定时器
    Oracle flashback恢复误删的数据或表
  • 原文地址:https://www.cnblogs.com/sunpengfei/p/8577186.html
Copyright © 2020-2023  润新知