禁用 JUnit 3 类的导入

Tho*_*ler 1 eclipse configuration junit4 junit3

我只想开发 JUnit 4 测试。在编写单元测试时,Eclipse 经常从junit.frameworkJUnit 3 中导入类。

这导致了各种问题,例如,当期望异常时,如果它在错误的包中,它就不会捕获它,如下所示:

import static org.junit.Assert.*;
import junit.framework.ComparisonFailure;
[...]
try 
{
     assertEquals(0, 1);
}
catch(ComparisonFailure cfe)
{
}
Run Code Online (Sandbox Code Playgroud)

很奇怪,如果我Ctrl+ Clickon ComparisonFailure,它说

未找到来源

此类的 JAR 属于容器“JUnit 4”[...]

也许有用的环境信息:

  • 我的构建路径中没有 JUnit 3。
  • 月蚀月神 4.4.1

如何阻止 Eclipse 导入 JUnit 3 类?

我已经阅读了当我的构建路径中有 junit-4.3.1.jar 时,为什么 Eclipse 使用 JUnit 3?,但它已经很老了,可能不再适用于 Luna。另外,我的问题不在于运行测试,而在于实施测试。

小智 7

Eclipse 用户的另一个解决方法是以下解决方案:Windows -> Preferrence -> Java -> Appearance -> Type filters 并将 junit.framework.* 添加到排除列表。