我刚刚将SpringSource Tools Suite(STS,Eclipse的变体IDE)升级到最新版本(v3.6.1).然后我的所有JUnit单元测试都无法再次运行.我收到此错误:
Class not found ClassToTest
java.lang.ClassNotFoundException: ClassToTest
at java.net.URLClassLoader$1.run(URLClassLoader.java:200)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
at java.lang.ClassLoader.loadClass(ClassLoader.java:307)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:268)
at java.lang.ClassLoader.loadClass(ClassLoader.java:252)
Run Code Online (Sandbox Code Playgroud)
根据这篇博客: 在Eclipse中运行JUnit单元测试时使用ClassNotFoundException(使用Maven),这是因为Eclipse中的一些Maven插件配置错误.但是,在STS 3.6.2中,我在Maven插件中找不到此选项"Include Modules".如何解决此问题并重新启用单元测试?
eclipse unit-testing maven-plugin maven classnotfoundexception
我正在使用eclipse在单个junit(4)测试类中运行测试.班上的测试都运行得很好.然后我添加一个额外的测试,并通过再次在ecplise中运行的测试运行该类.只运行旧的测试.eclipse没有看到新的测试.没有任何错误或任何错误,就像eclipse正在查看旧版本的测试一样.
如果我使用maven运行测试,一切正常.此外,在我在maven中运行测试后,ecplipse可以正确地查看和运行新测试.
有什么想法发生了什么?有任何想法如何让ecplipse的测试运行器看到我的新测试用例?
我使用maven自动安装的junit.当我运行maven测试时,我的测试工作正常.但是当我调用Eclipse JUnit测试时,它不使用当前版本的测试类.
例如,如果我将a更改 assertTrue()为a,assertFalse()我会得到相同的结果.这真让我抓狂.
项目的自动构建已启用.为什么JUnit会使用一些旧垃圾?
谢谢您的帮助.maven clean和eclipse clean解决了这个问题.奇怪的...