服务器之家:专注于服务器技术及软件下载分享
分类导航

PHP教程|ASP.NET教程|Java教程|ASP教程|编程技术|正则表达式|C/C++|IOS|C#|Swift|Android|VB|R语言|JavaScript|易语言|vb.net|

服务器之家 - 编程语言 - Java教程 - 详解SpringBoot之添加单元测试

详解SpringBoot之添加单元测试

2020-12-04 09:18木叶之荣 Java教程

本篇文章主要介绍了详解SpringBoot之添加单元测试,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧

本文介绍了详解SpringBoot之添加单元测试,分享给大家,希望此文章对各位有所帮助

在SpringBoot里添加单元测试是非常简单的一件事,我们只需要添加SpringBoot单元测试的依赖jar,然后再添加两个注解就可搞定了。

首先我们来添加单元测试所需要的jar

?
1
2
3
4
<dependency>
  <groupId>org.springframework.boot</groupId>
  <artifactId>spring-boot-starter-test</artifactId>
</dependency>

接着我们写了一个单元测试的demo

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
package com.zkn.learnspringboot.service.test;
 
import com.zkn.learnspringboot.FirstExample;
import com.zkn.learnspringboot.service.PersonService;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
 
/**
 * Created by wb-zhangkenan on 2016/11/18.
 */
@RunWith(SpringJUnit4ClassRunner.class)
@SpringBootTest(classes = FirstExample.class)
public class TestService extends BaseTestService{
  @Autowired
  private PersonService personService;
  @Test
  public void testSys() {
    System.out.println(personService.getPersonDomain().toString());
  }
 
}

然后我们run一下,一个单元测试就搞定了。

另外:@RunWith和@SprintBootTest这两个注解上都有@Inherited这个注解,所以我们可以定义一个单元测的父类,然后所有的单元测试类继承这个父类就行了。如下所示:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
package com.zkn.learnspringboot.service.test;
 
import com.zkn.learnspringboot.FirstExample;
import org.junit.runner.RunWith;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
 
/**
 * Created by zkn on 2016/11/20.
 */
@RunWith(SpringJUnit4ClassRunner.class)
@SpringBootTest(classes = FirstExample.class)
public class BaseTestService {
 
}
?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
package com.zkn.learnspringboot.service.test;
 
import com.zkn.learnspringboot.service.PersonService;
import org.junit.Test;
import org.springframework.beans.factory.annotation.Autowired;
 
/**
 * Created by wb-zhangkenan on 2016/11/18.
 */
 
public class TestService extends BaseTestService{
  @Autowired
  private PersonService personService;
  @Test
  public void testSys() {
    System.out.println(personService.getPersonDomain().toString());
  }
 
}

如果你用的SpringBoot是1.4.0之前的话,所用的注解稍有不同。你需要把@SpringBootTest注解换成@SpringApplicationConfiguration和@WebAppConfiguration。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持服务器之家。

原文链接:http://blog.csdn.net/zknxx/article/details/53244255

延伸 · 阅读

精彩推荐