Junit的核心Runner在执行的时候不会创建容器。同时它字节码文件,也改不了
spring整合junit
想办法把junit里面的不能加载容器的main方法换掉。从而实现创建容器。有了容器就可以实现注入
导入spring-test这个包。在pom.xml内配置
Junit包下面有RunWith这么个注解
这里要求的是一个字节码,并且是集成Runner的
所以这里配置的是SpringJUnit4ClassRunner.class
点开。SpringJUnit4ClassRunner 这个类集成了BlockJUnit4ClassRunner
BlockJUnit4ClassRunner又继承了ParentRunner
ParentRunner又继承了Runner
所以最终SpringJUnit4ClassRunner是继承自Runner。这个类是Spring是提供的一定会为我们创建容器,并读取配置文件。
但是前提它需要知道你到底用的是配置文件还是注解。用的配置文件你配置文件放哪了。用的注解。你的注解是谁。
于是就需要第三部
第三步-告知spring容器
@ContextConfiguration里面很多参数
classes表示的是注解的方式创建容器
运行findAll
注意事项
找到本地的maven仓库。本地有4.1.2的版本,。
把我们的pom.xml改成4.1.2的版本
再次运行测试方法
我们改回4.1.0的JUnit版本。
我们在运行方法的时候,如果JUnit的版本不支持那么不会体现出现了这个时候我们要运行这个类
只要改成4.1.2及以上就可以了
xml配置的项目
02account_xmlioc
1.导入spring-test的包
然后是JUnit改成4.1.2版本
测试类重复代码删除
然后是定义变量使用Autowired自动注入
@RunWith替换成SpringJUnit4ClassRunner
@ContextConfiguration这个时候不能再用classes了。因为我们是xml配置。用locations配置
配置好执行测试