【ST】hw2——find the error in the follow case

public int findLast (int[] x, int y) {

  //Effects: If x==null throw

    NullPointerException?

  // 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 = 2

// Expected = 0

 

l   Identity the fault

这样的话丢掉了x[0]=y的情况

应该变成【for (int i=x.length-1; i >= 0; i--)】

l   If possible, identity a test case that does not execute the fault. (Reachability)

一个到达了错误代码行,却没有执行的例子

比如:x = null,y = 2

返回:期望值——-1

                实际值——-1

l   If possible, identity a test case that execute the fault, but dose not result in an error state.

到达了错误的代码行,却没有导致错误的结果

test: x = [2, 3, 5]; y = 3/5

返回:期望值——1/2

                 实际值——1/2

l   If possible, identity a test case that results in an error, but not a failure.

产生了error,而不是failure

test: x = [2, 3, 5]; y = 2

返回:期望值——0

                实际值——-1

 

 

 

 

 

 

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

 

l   Identity the fault

这样显示的是第一个0而不是最后一个0

应该改为for (int i = x.length – 1 ; i >= 0; i--)

l   If possible, identity a test case that does not execute the fault. (Reachability)

一个数组中不含0的数组,例如test: x = [3, 1, 3]

返回:期望值——-1

                实际值——-1

l   If possible, identity a test case that execute the fault, but dose not result in an error state.

大概是一个回文结构的数组,0在最中间

例如test: x = [3, 0, 3]

返回:期望值——1

                实际值——1

l   If possible, identity a test case that results in an error, but not a failure.

test: x = [0, 1, 0]

返回:期望值——2

                实际值——0

时间: 2024-11-08 20:08:02

【ST】hw2——find the error in the follow case的相关文章

【转载】Android Gradle Build Error:Some file crunching failed, see logs for details解决办法

错误日志:Error:java.lang.RuntimeException: Some file crunching failed, see logs for details Log: FAILURE: Build failed with an exception. * What went wrong: Execution failed for task ':app:mergeDebugResources'. > Error: java.lang.RuntimeException: Crunch

【Tomcat】Unrecognized Windows Sockets error: 10106: Socket creation failed

tomcat8启动过程中报如下错误 30-Nov-2017 22:45:52.892 严重 [main] org.apache.catalina.core.StandardServer.await StandardServer.await: create[localhost:8005]: java.net.SocketException: Unrecognized Windows Sockets error: 10106: create at java.net.ServerSocket.crea

【转载】C++编译出现 error C2664: 不能将参数 2 从“const char [5]”转换为“LPCTSTR”解决办法。

编译程序的时候出现这样的错误,原因是在新建MFC项目的时候,设置字符集Unicode的属性. 解决方法一: 在VC2010的解决方案管理器窗口内,右击你的项目“项目”,然后选“属性”(最后一项),再点“配置属性”,是个“+”号,把它展开,然后选“常规”选项卡,倒数第三项“字符集”,选择“使用多字节字符集”.问题解决. 不过还是建议使用Unicode,否则你的程序将有很大的局限性:要是你的程序只在西方发布还好,但毕竟是适应中国大陆的程序吧,所以建议使用Unicode. 解决方法二: 使用调用CSt

【Web】Django OAuth invalid_grant error

This can happen if the code is expired. They expire pretty quickly by default. You can look up your code in the Django admin under Grants and change the expiration date to far in the future. 原因: Django OAuth Toolkit 默认的Grant过期时间非常短暂. 参考资料: http://sta

【转】ORA-00257:archiver error. 错误的处理方法

出现这个问题的原因一般是日志满了.这里以用户tt为例: 一.用sys用户登录 sqlplus sys/[email protected] as sysdba 二.看看archiv log所在位置 SQL> show parameter log_archive_dest;     NAME                                     TYPE        VALUE     ------------------------------------   --------

【ST】printPrimes()相关

为printPrimes()方法画控制流程图. 考虑测试用例t1=(n=3)和t2=(n=5).即使这些测试用例游历printPrimes()方法中相同的主路径,他们不一定找出相同的错误.设计一个简单的错误,使得t2比t1更容易发现. 数组越界错误. 针对printPrimes(),找到一个测试用例,使得响应的测试路径访问连接while语句开始到for语句的边,而不用通过while循环体. n=0或者n=1 针对printPrimes()的图例列举每个节点覆盖,边覆盖和主路径覆盖的测试需求.

【 OJ 】趣味游戏 (runtime error。。。。)

趣味比赛 发布时间: 2017年12月12日 16:36   最后更新: 2017年12月12日 16:44   时间限制: 1000ms   内存限制: 128M   SPJ 描述 小明参加了学校举办的火眼金睛趣味比赛,比赛的规则是这样的:由若干男生和若干女生组成的队伍站成一排,小明要在最短的时间内在队伍中找到一个人,这个人前面的男生的个数等于从他开始的队伍(包含他自己)中女生的个数.小明现在很头疼,比赛方规定小明可以求助好友,作为他的好朋友,请你帮帮他. 输出要求的人的位置,若不存在输出No

【软件测试】Homework 1 Briefly describe an error

[要求] Briefly describe an error from your past projects that you have recently completed or an error from other projects which impress you most. State the reason, impact of the error and how did you find it. [解答] 在上学期的考勤系统制作过程中,我们后台采用的是Spring Boot和Hib

poj 2411 Mondriaan&#39;s Dream 【dp】

题目:poj 2411 Mondriaan's Dream 题意:给出一个n*m的矩阵,让你用1*2的矩阵铺满,然后问你最多由多少种不同的方案. 分析:这是一个比较经典的题目,网上各种牛B写法一大堆.题解也是 我们可以定义状态:dp[i][st]:在第 i 行状态为 st 的时候的最大方案数. 然后转移方程:dp[i][st] = sum (dp[i-1][ss]) 即所有的当前行都是由上一行合法的状态转移而来. 而状态的合法性由两种铺法得到,第一种横放,注意要求前一行全满,然后竖放,上一行为空