单元测试—— Spring 环境下测试之 SpringJUnit4ClassRunner

本文介绍了SpringJUnit4ClassRunner在单元测试中的应用,对比MockitoJUnitRunner,SpringJUnit4ClassRunner能创建真实的Spring上下文,使Bean的注解生效并执行生命周期方法。在测试类中,@Autowired注入的Bean会成为Spring Context的一部分,而非Mock对象。通过实例展示了SpringJUnit4ClassRunner的便利性,并鼓励读者探讨更多使用场景。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

系列文章

单元测试—— Mock 对象行为之 Mockito

单元测试—— 强大的 PowerMock

单元测试—— Spring @Scheduled

前言

       上篇文章《单元测试—— Mock 对象行为之 Mockito》介绍的实践部分是运行 MockitoJUnitRunner 上的,Mockito 它可以模拟 Bean 的行为,但是它并没有真正的创建 Bean,MockitoJUnitRunner 并不创建 Spring Test Context。

       SpringJUnit4ClassRunner 是 BlockJUnit4ClassRunner(JUnit4父类,但功能完全一样) 的扩展,它通过 TestContextManager 和相关支持类和注释,提供 Spring TestContext Framework 的功能进行标准的JUnit测试。

       在 SpringJUnit4ClassRunner 下创建的 Bean, 其注释都会被解释,被@Autowired 或者 @PreDestiry 等注释的方法也会在其生命阶段被执行,它就是一个 Spring Context 中真正的 Bean。这不像在 MockitoJUnitRunner 中 Mock 的对象。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值