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.+. )

junit 单元测试报错java.lang.NoClassDefFoundError