弹簧引导2。X快速集成单元测试解析

  

<强>一、实现原理
  

  

使用MockMvc发起请求,然后执行API中相应的代码,在执行的过程中使模拟模拟底层数据的返回,最后结果验证。

  

<强>二,常用注解介绍
  

  

<强> @SpringBootTest 是SpringBoot的一个用于测试的注解,通过SpringApplication在测试中创建ApplicationContext。

  

<强> @AutoConfigureMockMvc 是用于自动配置MockMvc。

  

<强> @RunWith在JUnit 中有很多个选手,他们负责调用你的测试代码,每一个运动员都有各自的特殊功能,你要根据需要选择不同的运动员来运行你的测试代码。

  

<强> @Before 在每个测试方法前执行,一般用来初始化方法。

  

<强> @After 在每个测试方法后执行,在方法执行完成后要做的事情。

  

<强>三,主要代码
  

  

引入测试jar包
  

        & lt; dependency>   & lt; groupId> org.springframework.boot   & lt; artifactId> spring-boot-starter-test   & lt; scope> test   & lt;/dependency>      

测试类中添加注解和测试代码

        包com.example.helloSpringBoot;   进口org.junit.After;   进口org.junit.Assert;   进口org.junit.Before;   进口org.junit.Test;   进口org.junit.runner.RunWith;   进口org.slf4j.Logger;   进口org.slf4j.LoggerFactory;   进口org.springframework.beans.factory.annotation.Autowired;   进口org.springframework.boot.test.autoconfigure.web.servlet.AutoConfigureMockMvc;   进口org.springframework.boot.test.context.SpringBootTest;   进口org.springframework.test.context.junit4.SpringRunner;   进口org.springframework.test.web.servlet.MockMvc;   进口org.springframework.test.web.servlet.MvcResult;   进口org.springframework.test.web.servlet.request.MockMvcRequestBuilders;   进口org.springframework.test.web.servlet.result.MockMvcResultMatchers;   @RunWith (SpringRunner.class)   @SpringBootTest(类={HelloSpringBootApplication.class})   @AutoConfigureMockMvc//测试接口用   公开课HelloControllerTest {   私有静态最终记录器日志=LoggerFactory.getLogger (HelloControllerTest.class);   @Before   公共空间testBefore () {   log.info(“测试前”);   }   @After   公共空间testAfter () {   log.info(“测试后”);   }   @ autowired   私人MockMvc MockMvc;/* *   *测试/mockTest   *   *   */@Test   公共空间mockTest()抛出异常{   MvcResult MvcResult=mockMvc.perform (MockMvcRequestBuilders.get ("/mockTest "))。   一下动身(MockMvcResultMatchers.status () .isOk ()) .andReturn ();   .getStatus int状态=mvcResult.getResponse () ();//打印出状态码,200就是成功   log.info(“状态码=" +状态);   Assert.assertEquals(200、状态);   }   }      

运行mockTest
  

  

运行成功后截图如下:

  

弹簧引导2。X快速集成单元测试解析

  

上述三步操作完成后即可实现对API(控制器)测试,有问题欢迎留言沟通哦!

  

完整源码地址:https://github.com/suisui2019/helloSpringBoot

  

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

弹簧引导2。X快速集成单元测试解析