JUnit4 + Eclipse“启动期间发生内部错误”

时间:2009-08-09 03:28:55

标签: java eclipse junit

我正在尝试在Eclipse 3.4.2上运行JUnit4测试用例,但它甚至都不适合我。我的构建路径和测试应用程序中有junit-4.7.jar。

这是一个说明我的问题的简单示例

package test;
import org.junit.Before;
import org.junit.Test;

public class UTest {    
    @Test
    public void test() {
    }

    @Before
    public void setUp() throws Exception {
    }
}

编译好

然后我从Eclipse运行“运行JUnit测试用例”,我收到一条带有此消息的错误对话框

"Launching UTest' has encountered a problem
An internal error occurred during: "Launching UTest".
java.lang.NullPointerException

导致这些NullPointerExceptions的原因是什么?我做错了什么?

10 个答案:

答案 0 :(得分:32)

尝试一切后对我有用:

  1. 转到帮助
  2. 安装新软件
  3. 使用:Juno
  4. 编程语言(扩展)
  5. 安装Java开发工具
  6. 重新启动
  7. 有效:)

答案 1 :(得分:3)

我能够通过删除工作区和Eclipse目录并重新开始来解决这个问题。

答案 2 :(得分:3)

这对我有用:

  1. 创建测试类的另一个副本(CopyOfUTest.java)
  2. 运行副本以确保它通过
  3. 进入Run>运行配置
  4. 在JUnit下,找到原始类和复制类的运行配置
  5. 右键单击并删除原始类的配置
  6. 将复制的类的配置重命名为原始配置名称
  7. 从项目中删除复制的课程

答案 3 :(得分:2)

您是否查看过Eclipse错误日志?您可以通过打开“错误日志”视图来查看它。

http://help.eclipse.org/help32/topic/org.eclipse.pde.doc.user/guide/tools/views/error_log.htm

答案 4 :(得分:2)

这里给出的答案都不适合我,所以我最后只是安装和使用InfiniTest。它没有这个问题,它也会自动运行测试,所以我可以专注于我的工作。

Eclipse with Infinitest showing a red "tests failed" status message and the corresponding assertion error in the "Problems" tab

答案 5 :(得分:2)

此错误如果您还使用Android开发工具包插件,可能会导致eclipse:

"Launching UTest' has encountered a problem
    An internal error occurred during: "Launching UTest".
    java.lang.NullPointerException

如果要将一个普通的Java项目加载到安装并启用了android ADT插件的Eclipse实例中,可能会导致错误。在这种情况下,Eclipse会寻找" Android"项目文件,并没有找到任何。所以它说:" NullPointerException"。

因此要修复它,请在没有ADT插件的情况下重新下载Eclipse:https://www.eclipse.org/downloads/

然后重新导入您的项目。 junit测试没有问题。

许多人讨厌eclipse因为它的神秘错误信息。就像我们回到了1950年的打卡世界,那里没有错误信息。该程序暂停并发生未定义的行为。

答案 6 :(得分:1)

您的代码适用于我。

的Eclipse 版本:3.4.1 构建ID:M20080911-1700

我右键单击.java文件RunAs JUnit Test。这表明问题是由Eclipse配置问题引起的,而不是代码问题。

答案 7 :(得分:1)

谢谢,这也解决了我的问题。 当我删除旧的模拟器并创建一个新的模拟器时,问题就出现了。 修复:像OP说删除工作区,确保将项目保留在其中:) 然后将它们导回到eclipse “听起来像很多工作”? 花了我不到半分钟!

答案 8 :(得分:1)

如果您使用的是Android及其相关插件,则Android仅支持JUnit 3。

我通过选择Test Runner作为JUnit 3解决了这个问题。

在我的课堂上,JUnit 4被添加到构建路径 - >库中。

然后运行测试文件,转到:运行方式 - >运行配置,然后选择相应的test.java文件并相应地选择Test Runner(无论是JUnit 3还是4)。

答案 9 :(得分:0)

我遇到了类似的问题,但我使用的是Python。这就是我为解决/避免它而做的事情:

  1. 从Eclipse中删除了我的.project文件和项目。
  2. 再次创建项目。
  3. 一切正常。
  4. 问题似乎出现在.project文件中,其中有一些对CDT Builder的引用,而在新的.project文件中没有。