Spring项目用junit 时出现org.junit.runners.BlockJUnit4ClassRunner cannot be resolved

spring框架项目用junit做测试时,程序在自动编译时出现下述问题:

?程序的问题是项目中找不到org.junit.runners.BlockJUnit4ClassRunner,有两种可能,一是没有导入junit的jar, 二是导入的junit的jar的版本中没有此类。

1、首先确认是否导入jar包


?
2、既然Jar已导入,那就上junit官网看看现在junit的版本



?

总结:

1、充分可以肯定是版本问题,junit换一个高一些的版本,问题解决。

?

2、经过调查了解到Spring3提供了SpringJUnit4ClassRunner基类让我们可以很方便的接入JUnit4,而org.springframework.test.context.junit4.SpringJUnit4ClassRunner 继承了org.junit.runners.BlockJUnit4ClassRunner,这里BlockJUnit4ClassRunner类是在junit4.5以上的版本才含有的。


3、使用junit4.11版本时,官网里是要求junit-4.11.jar + hamcrest-core-1.3.jar,如果不加hamcrest-core-1.3.jar会报java.lang.NoClassDefFoundError: org/hamcrest/SelfDescribing错误。如果用4.11版本需要两个Jar都加上,或者换成低一点的版本,下面共享的文件里提供了?junit4.7 版本。?



?
?
温馨提示:junit-4.11的jar包已共享,共享文件包括junit的jar包、源代码、文档。

百度网盘:链接:http://pan.baidu.com/s/1mgvFIje 密码:8ssf

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。