JUnit测试失败

时间:2017-08-16 18:36:23

标签: java eclipse junit

我正在尝试对下面的课程进行测试:

包chapter03.backend;

import java.util.Map;

public class CharacterCounter {
    public static Map<Character, Integer> countCharacters(String text) {

         if (text == null) {
              throw new IllegalArgumentException("text must not be null");
            }
        return null;

    }
}

我写了这个测试类:

package chapter03.backend;

import static org.junit.Assert.*;

import org.junit.Test;

public class CharacterCounterTests {

    @Test(expected=IllegalAccessException.class)
    public void testNullInput() {
        CharacterCounter.countCharacters(null);
    }

}

当我运行它时,它会一直失败。以下是错误的屏幕截图:

enter image description here

我将很感激指出这一点。

1 个答案:

答案 0 :(得分:2)

{ # match { \\? # match \ optionally " # match a double quote ([^}]+?) # match any character that is not a } (lazy match) (?=\\?"}) # lookahead to assert we have optional \ followed by "} 不是IllegalAccessException,也不是它的子类。

你确实在测试方法中抛出了IllegalArgumentException但是在测试中断言IllegalArgumentException被抛出。
因此,断言失败。

你应断言预期IllegalArgumentException

IllegalArgumentException