java.lang.AssertionError:预期为<0>,但为<48>

时间:2020-11-10 09:24:29

标签: java junit

因此,我应该更正我通常所做的java函数中的错误(这是“索引超出范围”错误),但是现在我收到此错误消息,并且我想了解在哪里48来自。

函数本身:

 public char firstRepeatedCharacter() {
    for (int i = 0; i < (word.length()-1); i++) {
      char ch = word.charAt(i);
      if (ch == word.charAt(i + 1))
        return ch;
    }
    return 0;
  }

(我添加了“ -1”来纠正“索引超出范围”错误。)

和我用JUnit制作的测试功能:

public class WordAnalyzerTest {
  @Test
  public void shouldTestaardvark() {
      WordAnalyzer wa = new WordAnalyzer("aardvark");
      char result = wa.firstRepeatedCharacter();
      assertEquals(result,'a');
  }
  @Test
  public void shouldTestroommate() {
      WordAnalyzer wa = new WordAnalyzer("roommate");
      char result = wa.firstRepeatedCharacter();
      assertEquals(result,'o');
  }
  @Test
  public void shouldTestmate() {
      WordAnalyzer wa = new WordAnalyzer("mate");
      char result = wa.firstRepeatedCharacter();
      assertEquals(result,'0');
  }
  @Test
  public void shouldTesttest() {
      WordAnalyzer wa = new WordAnalyzer("test");
      char result = wa.firstRepeatedCharacter();
      assertEquals(result,'0');
  }
}

当Eclipse进行最后两个测试,前两个测试正确运行时,会出现错误消息。

“ 48”是哪里来的?

编辑:谢谢大家,它成功了!

0 个答案:

没有答案
相关问题