Day05-Spring整合Junit

本文介绍了Spring如何与Junit结合进行单元测试。通过SpringJUnit4ClassRunner类启动测试,@ContextConfiguration指定配置文件,@Autowired注解注入需要测试的对象,简化了原始Junit测试中手动创建Spring容器的步骤,使得测试更加便捷。详细步骤包括导入依赖、替换运行期、指定配置和注入测试对象。

Day05-Spring整合Junit

1.1 原始Junit测试Spring的问题

在测试类中,每个测试方法都有一下两行代码:

ApplicationContext ac = new ClassPathXmlApplicationContext("bean.xml");
IAccountService as = ac.getBean("accountService",IAccountService.class)

这两行代码的作用是获取容器,如果不写的话,直接会提示空指针异常,所以又不能轻易删掉


1.2 上述问题解决思路

  • 让SpringJunit负责创建Spring容器,但是需要将配置文件的名称告诉它
  • 将需要进行的测试Bean直接在测试类中进行注入

1.3 Spring集成Junit步骤

  1. 导入spring集成Junit的坐标
  2. 使用@Runwith注解替换原来的运行期
  3. 使用@ContextConfiguration指定配置文件或配置类
  4. 使用@Autowired注入需要测试的对象
  5. 创建测试方法进行测试

1.4 Spring集成Junit代码实现

1.导入spring集成Junit的坐标

<!--此处需要注意的是,spring5 及以上版本要求Junit的版本必须是4.12及以上-->
<dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-test</artifactId>
            <version>5.0.5.RELEASE</version>
</dependency>
<dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <version>4.12</version>
            <scope>test</scope>
</dependency>

2.使用@Runwith注解替换原来的运行期

@RunWith(SpringJUnit4ClassRunner.class)
public class SpringJunitTest{

}

3.使用@ContextConfiguration指定配置文件或配置类

@RunWith(SpringJUnit4ClassRunner.class)
//加载spring核心配置文件
//加载ContextConfiguration(classes={SpringConfiguration.class})
public class SpringJunitTest{

}

4.使用@Autowired注入需要测试对象

@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration(Classes={SpringConfiguration.class})
public class SpringJunitTest{
    @Autowired
    private UserService userService;
}

5.创建测试方法进行测试

@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration(Classes={SpringConfiguration.class})
public class SpringJunitTest{
    @Autowired
    private UserService userService;
    @Test
    public void testUserService(){
    	userService.save();
    }

1.5 知识要点

Spring集成Junit步骤

  1. 导入spring集成Junit的坐标
  2. 使用@Runwith注解替换原来的运行期
  3. 使用@ContextConfiguration指定配置文件或配置类
  4. 使用@Autowired注入需要测试的对象
  5. 创建测试方法进行测试
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

阿杰杰杰のblog

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值