当前位置: 首页 > 知识库问答 >
问题:

运行JUnit测试时未发现类异常

郑向阳
2023-03-14

在Eclipse中运行JUnit测试时,我会收到以下错误:

Class not found com.myproject.server.MyTest
java.lang.ClassNotFoundException: com.myproject.server.MyTest
    at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
    at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:423)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:356)
    at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.loadClass(RemoteTestRunner.java:693)
    at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.loadClasses(RemoteTestRunner.java:429)
    at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:452)
    at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:683)
    at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:390)

虽然我使用的是maven,但我尝试在类路径中添加JUnit库,并且JUnit库位于POM依赖项中。

我已经尝试过清理该项目,并使用Eclipse的JUnit插件创建了一个新的JUnit测试用例,但仍然得到相同的错误。

共有1个答案

申屠恺
2023-03-14

出现这种情况的原因是,当您使用mvn clean compile时,只有源代码在编译(我使用的是maven 3.1.0,所以我不确定它是否总是这样运行)。

如果运行mvn test,测试代码也会编译,但随后它会运行测试(如果您试图通过Eclipse运行测试,则可能不需要立即执行这些测试)解决这一问题的方法是在执行MVN clean时将test-compile添加到Maven命令序列中。例如,您可以运行mvn clean compile test-compile

 类似资料:
  • 问题内容: 在Eclipse中运行JUnit测试时出现此错误: 尽管我正在使用maven,但我尝试在类路径中添加库,而JUnit库位于POM依赖项中。 我已经尝试清理项目,并使用Eclipse的JUnit插件创建了一个新的JUnit测试用例,但仍然遇到相同的错误。 问题答案: 出现这种情况的原因是,使用时只有源代码正在编译(我使用的是maven 3.1.0,所以我不确定它是否始终如此)。 如果运行

  • 我试图用JUnit运行一个cucumber测试,但我得到了异常。 JUnit代码: 例外情况: 设置cucumber测试时的NoClassDefoundErr 线程“main”java.lang.NoClassDeffounderRror:gherkin/formatter/formatter 以下问题的答案已经建议添加相同版本的黄瓜jar文件。但是,由于Maven存储库中可用的jar文件本身没有

  • 我的项目是一个使用Gradle的Android库项目。当我运行测试时,IntelliJ抱怨以下错误: 但是存在于测试包中。 这是我的建筑。格雷德尔: 我使用的是IntelliJ IDEA13.1.1。 谢了。

  • 当我尝试运行一个简单的JUnit 5测试(eclipse)时,我遇到了以下错误: 这是我的: 我尝试过类似问题的一些建议,比如这个github问题和其他问题,但是没有成功。我还在学习JUnit,所以我可能会忘记一些显而易见的东西。

  • 从很久以前的某个版本开始(大约是1.b.35版),Nutz 就偷偷的加入了 maven 的 pom.xml 文件, 极好的解决了测试时需要依赖其他 jar 包的问题,接下来就让我们使用 Maven 来进行 JUnit 测试吧。 Nutz 在 Github 的 地址为 https://github.com/nutzam/nutz(Git@OSC镜像 https://git.oschina.net/n

  • 现在您已经了解了TestNG及其各种测试,您现在必须担心如何重构现有的JUnit代码。 没有必要担心,因为TestNG提供了一种按照自己的节奏从JUnit转换到TestNG的方法。 您可以使用TestNG执行现有的JUnit测试用例。 TestNG可以自动识别并运行JUnit测试,因此您可以将TestNG用作所有现有测试的运行器,并使用TestNG编写新测试。 您所要做的就是将JUnit库放在Te