junit报错java.lang.Exception: No tests found matching
Posted allen1994
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了junit报错java.lang.Exception: No tests found matching相关的知识,希望对你有一定的参考价值。
junit报错java.lang.Exception: No tests found matching
最近在学习Spring的过程中用到了Junit,然而中间遇到了个令人十分捉狂的报错。
1 java.lang.Exception: No tests found matching [{ExactMatcher:fDisplayName=cdShouldNotBeNull], {ExactMatcher:fDisplayName=cdShouldNotBeNull(soundsystem.CDPlayerTest)], {LeadingIdentifierMatcher:fClassName=soundsystem.CDPlayerTest,fLeadingIdentifier=cdShouldNotBeNull]] from [email protected] 2 at org.junit.internal.requests.FilterRequest.getRunner(FilterRequest.java:40) 3 at org.eclipse.jdt.internal.junit4.runner.JUnit4TestLoader.createFilteredTest(JUnit4TestLoader.java:77) 4 at org.eclipse.jdt.internal.junit4.runner.JUnit4TestLoader.createTest(JUnit4TestLoader.java:68) 5 at org.eclipse.jdt.internal.junit4.runner.JUnit4TestLoader.loadTests(JUnit4TestLoader.java:43) 6 at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:444) 7 at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:675) 8 at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:382) 9 at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:192)
代码如下:
1 import static org.junit.Assert.*; 2 3 import javax.annotation.Resource; 4 5 import org.junit.Test; 6 import org.junit.runner.RunWith; 7 import org.springframework.test.context.ContextConfiguration; 8 import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; 9 10 @RunWith(SpringJUnit4ClassRunner.class) 11 @ContextConfiguration(classes = CDPlayerConfig.class) 12 public class CDPlayerTest { 13 14 @Resource 15 private CompactDisc cd; 16 17 @Test 18 public void cdShouldNotBeNull(){ 19 assertNotNull(cd); 20 } 21 22 }
仔细检查过代码应该是没有什么问题的,上网查了下,发现挺多朋友也遇到过这个坑爹的问题,最后找到解决方案如下。
参考解决方案:
原来除去Junit在代码里需要引用的包以外,如果涉及到需要Spring自动创建的应用上下文,还涉及到另外一个jar包。
hamcrest-all-1.3.jar
只要把这个jar包引入即可。
作者用的Spring版本为4.3.5,Junit版本为4.12。
参考的原作:
junit报错java.lang.Exception: No tests found matching
以上是关于junit报错java.lang.Exception: No tests found matching的主要内容,如果未能解决你的问题,请参考以下文章
JUnit 报错 method initializationerror not found:JUnit4单元测试报错问题
Junit 报错 -- initializationError
使用Junit单元测试报错“No runnable methods“
Spring项目JUnit测试报错ClassNotFoundException解决
错误记录Android Studio 编译时 lint 检查报错 ( Could not resolve junit:junit:4.+. )