什么是Junit的想告诉我时,它抛出一个" NoTestsRemainException" [英] What is Junit trying to tell me when it throws a "NoTestsRemainException"

查看:1051
本文介绍了什么是Junit的想告诉我时,它抛出一个" NoTestsRemainException"的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我试图运行Apache POI项目的测试,但得到下面的异常。我以前看过它已经几次,但每次我完全失去了什么JUnit是想告诉我?

的Javadoc刚指出:当一个过滤器从亚军删除所有测试时抛出。,但是这并不意味着一个Ant过滤器,因为它里面的JUnit抛出,所以它过滤可能是这里去除测试?如何调试/修复一个Ant文件,让我这个消息?

 测试主:
[JUnit的] java.lang.NoClassDefFoundError的:组织/ JUnit的/亚军/操控/ NoTestsRemainException
[JUnit的]在java.lang.Class.getDeclaredMethods0(本机方法)
[JUnit的]在java.lang.Class.privateGetDeclaredMethods(Class.java:2451)
[JUnit的]在java.lang.Class.getMethod0(Class.java:2694)
[JUnit的]在java.lang.Class.getMethod(Class.java:1622)
[JUnit的]在sun.launcher.LauncherHelper.getMainMethod(LauncherHelper.java:494)
[JUnit的]在sun.launcher.LauncherHelper.checkAndLoadMain(LauncherHelper.java:486)
[JUnit的]产生的原因:抛出java.lang.ClassNotFoundException:org.junit.runner.manipulation.NoTestsRemainException
[JUnit的]在java.net.URLClassLoader的$ 1.run(URLClassLoader.java:366)
[JUnit的]在java.net.URLClassLoader的$ 1.run(URLClassLoader.java:355)
[JUnit的]在java.security.AccessController.doPrivileged(本机方法)
[JUnit的]在java.net.URLClassLoader.findClass(URLClassLoader.java:354)
[JUnit的]在java.lang.ClassLoader.loadClass(ClassLoader.java:423)
[JUnit的]在sun.misc.Launcher $ AppClassLoader.loadClass(Launcher.java:308)
[JUnit的]在java.lang.ClassLoader.loadClass(ClassLoader.java:356)
[JUnit的] ... 6个
[JUnit的]异常线程main
[JUnit的] java.io.FileNotFoundException:C:\\工作区\\ devtools \\源\\ POI干线\\ junitvmwatcher937297744.properties(系统找不到指定的文件)
[JUnit的]在java.io.FileInputStream.open(本机方法)
[JUnit的]在java.io.FileInputStream中的<&初始化GT;(FileInputStream.java:138)
[JUnit的]在java.io.FileReader<&初始化GT;(FileReader.java:72)
[JUnit的]在org.apache.tools.ant.taskdefs.optional.junit.JUnitTask.executeAsForked(JUnitTask.java:1115)
[JUnit的]在org.apache.tools.ant.taskdefs.optional.junit.JUnitTask.execute(JUnitTask.java:896)
[JUnit的]在org.apache.tools.ant.taskdefs.optional.junit.JUnitTask.execute(JUnitTask.java:819)
[JUnit的]在org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:288)
[JUnit的]在sun.reflect.GeneratedMethodAccessor1.invoke(来源不明)
[JUnit的]在sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
[JUnit的]在java.lang.reflect.Method.invoke(Method.java:601)
[JUnit的]在org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106)
[JUnit的]在org.apache.tools.ant.Task.perform(Task.java:348)
[JUnit的]在org.apache.tools.ant.Target.execute(Target.java:357)
[JUnit的]在org.apache.tools.ant.Target.performTasks(Target.java:385)
[JUnit的]在org.apache.tools.ant.Project.executeSortedTargets(Project.java:1337)
[JUnit的]在org.apache.tools.ant.Project.executeTarget(Project.java:1306)
[JUnit的]在org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41)
[JUnit的]在org.apache.tools.ant.Project.executeTargets(Project.java:1189)
[JUnit的]在org.apache.tools.ant.Main.runBuild(Main.java:758)
[JUnit的]在org.apache.tools.ant.Main.startAnt(Main.java:217)
[JUnit的]在org.apache.tools.ant.launch.Launcher.run(Launcher.java:257)
[JUnit的]在org.apache.tools.ant.launch.Launcher.main(Launcher.java:104)


解决方案

挖掘到这个问题更多一些,我发现,这是通过运行一个新的Ant与旧的JUnit后引起。在这种情况下,它是蚂蚁1.7.1和1.8.2的JUnit对3.8.1。升级到4.10 JUnit的问题解决了!

I'm trying to run tests of the Apache POI project, but get the following exception. I saw it already a few times before, but every time I am completely lost about what JUnit is trying to tell me?

Javadoc just states "Thrown when a filter removes all tests from a runner. ", but this does not mean an Ant-filter, because it is thrown inside JUnit, so which Filter is possibly removing tests here? How do I debug/fix an Ant-file that gives me this message?

test-main:
[junit] java.lang.NoClassDefFoundError: org/junit/runner/manipulation/NoTestsRemainException
[junit]     at java.lang.Class.getDeclaredMethods0(Native Method)
[junit]     at java.lang.Class.privateGetDeclaredMethods(Class.java:2451)
[junit]     at java.lang.Class.getMethod0(Class.java:2694)
[junit]     at java.lang.Class.getMethod(Class.java:1622)
[junit]     at sun.launcher.LauncherHelper.getMainMethod(LauncherHelper.java:494)
[junit]     at sun.launcher.LauncherHelper.checkAndLoadMain(LauncherHelper.java:486)
[junit] Caused by: java.lang.ClassNotFoundException: org.junit.runner.manipulation.NoTestsRemainException
[junit]     at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
[junit]     at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
[junit]     at java.security.AccessController.doPrivileged(Native Method)
[junit]     at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
[junit]     at java.lang.ClassLoader.loadClass(ClassLoader.java:423)
[junit]     at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
[junit]     at java.lang.ClassLoader.loadClass(ClassLoader.java:356)
[junit]     ... 6 more
[junit] Exception in thread "main" 
[junit] java.io.FileNotFoundException: C:\workspaces\devtools\source\poi-trunk\junitvmwatcher937297744.properties (The system cannot find the file specified)
[junit]     at java.io.FileInputStream.open(Native Method)
[junit]     at java.io.FileInputStream.<init>(FileInputStream.java:138)
[junit]     at java.io.FileReader.<init>(FileReader.java:72)
[junit]     at org.apache.tools.ant.taskdefs.optional.junit.JUnitTask.executeAsForked(JUnitTask.java:1115)
[junit]     at org.apache.tools.ant.taskdefs.optional.junit.JUnitTask.execute(JUnitTask.java:896)
[junit]     at org.apache.tools.ant.taskdefs.optional.junit.JUnitTask.execute(JUnitTask.java:819)
[junit]     at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:288)
[junit]     at sun.reflect.GeneratedMethodAccessor1.invoke(Unknown Source)
[junit]     at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
[junit]     at java.lang.reflect.Method.invoke(Method.java:601)
[junit]     at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106)
[junit]     at org.apache.tools.ant.Task.perform(Task.java:348)
[junit]     at org.apache.tools.ant.Target.execute(Target.java:357)
[junit]     at org.apache.tools.ant.Target.performTasks(Target.java:385)
[junit]     at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1337)
[junit]     at org.apache.tools.ant.Project.executeTarget(Project.java:1306)
[junit]     at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41)
[junit]     at org.apache.tools.ant.Project.executeTargets(Project.java:1189)
[junit]     at org.apache.tools.ant.Main.runBuild(Main.java:758)
[junit]     at org.apache.tools.ant.Main.startAnt(Main.java:217)
[junit]     at org.apache.tools.ant.launch.Launcher.run(Launcher.java:257)
[junit]     at org.apache.tools.ant.launch.Launcher.main(Launcher.java:104)

解决方案

After digging into this problem some more I found out that this is caused by running a newer Ant with an older JUnit. In this case it was Ant 1.7.1 and 1.8.2 against JUnit 3.8.1. Upgrading to JUnit 4.10 solved the problem!

这篇关于什么是Junit的想告诉我时,它抛出一个&QUOT; NoTestsRemainException&QUOT;的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆