ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

java.lang.Exception:No tests found matching的解决方案

2022-04-01 23:00:30  阅读:233  来源: 互联网

标签:lang Exception java RemoteTestRunner eclipse jar internal org


今天学习MBatis时使用Junit测试出现了这个错误:

1 java.lang.Exception: No tests found matching [{ExactMatcher:fDisplayName=add], {ExactMatcher:fDisplayName=add(com.test.UserTest)], {LeadingIdentifierMatcher:fClassName=com.test.UserTest,fLeadingIdentifier=add]] from org.junit.internal.requests.ClassRequest@42110406
2     at org.junit.internal.requests.FilterRequest.getRunner(FilterRequest.java:40)
3     at org.eclipse.jdt.internal.junit4.runner.JUnit4TestLoader.createFilteredTest(JUnit4TestLoader.java:83)
4     at org.eclipse.jdt.internal.junit4.runner.JUnit4TestLoader.createTest(JUnit4TestLoader.java:74)
5     at org.eclipse.jdt.internal.junit4.runner.JUnit4TestLoader.loadTests(JUnit4TestLoader.java:49)
6     at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:525)
7     at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:763)
8     at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:463)
9     at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:209)

查了一下,发现大家遇到这个问题的原因有这几种:

1、测试方法前面没有添加@Test注解(这也是最常见的错误了)

 

解决方案:加上注解,非常简单。

2、测试方法使用了静态修饰

 

 

( 这里举的例子因为无法通过编译的,所以旁边直接提示有错。)

解决方案:删掉static,使用非静态方法进行测试。

 3、测试方法不是public

 

 

 测试方法必须是public,很容易忽略的小细节。

解决方案:改为public修饰。

4、版本不兼容

这个问题我没遇到,可以看一下这位朋友的解释:https://blog.csdn.net/sinat_32873711/article/details/53780453

5、缺少jar包(如此坑爹的原因。。。)

这个就是我遇到的问题了,我逐一排除了各种可能的原因以后运行程序还是报错,气得我都想砸电脑了...

 

 

 后来我仔细看了一些项目,嗯?这是什么?

 

项目上有个红色感叹号,检查了一下好像没有啥问题,于是查了一下说有可能是缺少jar包。

得,看看是不是这么回事吧。

在有红色感叹号的项目上右键,选择build path,再选择Configure Build Path,我去还真是少了jar包

 

 

 咋回事呢,我突然想起来我之前搞日志下jar包的时候,一开始下的1.7.25的版本,后来发现1.7.30的slf4j用的人比较多,那赶紧换了,我粘贴到lib文件夹里的时候,顺手就把1.7.25的jar包删了,结果搞出这样一个乌龙。

ok,remove这个jar包,项目恢复正常了。再来试试测试能不能行。

 

真是一包眼泪没处搁!令人激动的绿色!!我这辈子没这么爱过绿色!!

 

 OK,问题解决!

通过这个也可以发现,在排除了语法、格式方面的原因后假如问题还是不能解决,那么就得考虑考虑是不是那些杂七杂八的地方出现了问题,比如jar包丢失啊,版本不兼容啊之类的。

希望大家用Junit的时候每次都飘绿,永远不报红~~~

 

标签:lang,Exception,java,RemoteTestRunner,eclipse,jar,internal,org
来源: https://www.cnblogs.com/CharlieByTheSea/p/16089591.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有