Spring Boot 单元测试

Posted 爱喝奶茶的皮卡丘

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Spring Boot 单元测试相关的知识,希望对你有一定的参考价值。

概述

主要是通过 @RunWith 和 @SpringBootTest 注解来开启单元测试功能

package com.snake.hello.spring.boot;

import org.junit.Before;
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.boot.test.web.client.TestRestTemplate;
import org.springframework.boot.web.server.LocalServerPort;
import org.springframework.http.ResponseEntity;
import org.springframework.test.context.junit4.SpringRunner;

import java.net.URL;

import static org.hamcrest.CoreMatchers.equalTo;
import static org.junit.Assert.assertThat;

@RunWith(SpringRunner.class)
@SpringBootTest(classes = HelloSpringBootApplication.class, webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT)
public class HelloSpringBootApplicationTests {

    @LocalServerPort
    private int port;

    private URL base;

    @Autowired
    private TestRestTemplate template;

    @Before
    public void setUp() throws Exception {
        this.base = new URL("http://localhost:" + port + "/");
    }

    @Test
    public void contextLoads() {
        ResponseEntity<String> response = template.getForEntity(base.toString(), String.class);
        assertThat(response.getBody(), equalTo("Hello Spring Boot"));
    }

}

 

运行它会先启动 Spring Boot 工程,再启动单元测试

以上是关于Spring Boot 单元测试的主要内容,如果未能解决你的问题,请参考以下文章

Spring Boot 单元测试,保姆级教程!

spring-boot 速成(11) - 单元测试

Spring Boot使用单元测试

Spring Boot单元测试入门实战之关于JUnit

Spring Boot单元测试JUnit

Spring Boot单元测试JUnit