zoukankan      html  css  js  c++  java
  • SpringBoot单元测试示例2

     1 package cn.coreqi.security.controller;
     2 
     3 import org.junit.Before;
     4 import org.junit.Test;
     5 import org.junit.runner.RunWith;
     6 import org.springframework.beans.factory.annotation.Autowired;
     7 import org.springframework.boot.test.autoconfigure.web.servlet.AutoConfigureMockMvc;
     8 import org.springframework.boot.test.context.SpringBootTest;
     9 import org.springframework.http.MediaType;
    10 import org.springframework.test.context.junit4.SpringRunner;
    11 import org.springframework.test.web.servlet.MockMvc;
    12 import org.springframework.test.web.servlet.request.MockMvcRequestBuilders;
    13 import org.springframework.test.web.servlet.result.MockMvcResultMatchers;
    14 import org.springframework.test.web.servlet.setup.MockMvcBuilders;
    15 import org.springframework.web.context.WebApplicationContext;
    16 
    17 @RunWith(SpringRunner.class)    //如何运行测试用例,使用SpringRunner执行测试用例。
    18 @SpringBootTest //指定当前类为测试用例类
    19 @AutoConfigureMockMvc
    20 public class UserControllerTests {
    21     @Autowired
    22     private WebApplicationContext wac;
    23 
    24     @Autowired
    25     private MockMvc mockMvc;
    26 
    27     @Before //@Before标注的方法会在每一个测试用例执行之前执行
    28     public void setup(){
    29         mockMvc = MockMvcBuilders.webAppContextSetup(wac).build();
    30     }
    31 
    32     @Test
    33     public void whenQuerySuccess() throws Exception {
    34         //MockMvcRequestBuilders的get方法会模拟发出一个GET请求
    35         mockMvc.perform(MockMvcRequestBuilders.get("/users")
    36                 .param("usernmae","fanqi")
    37                 .param("size","15")
    38                 .param("page","3")
    39                 .param("sort","id,desc")
    40                 .contentType(MediaType.APPLICATION_JSON_UTF8))
    41                 .andExpect(MockMvcResultMatchers.status().isOk())    //期望服务器端返回的信息
    42                 .andExpect(MockMvcResultMatchers.jsonPath("$.length()").value(3))
    43                 .andReturn().getResponse().getContentAsString();
    44     }
    45 }
  • 相关阅读:
    UVALive 5066 Fire Drill --BFS+DP
    Codeforces 486E LIS of Sequence --树状数组求LIS
    Codeforces 460D Little Victor and Set --分类讨论+构造
    Codeforces Round #285 (Div.1 B & Div.2 D) Misha and Permutations Summation --二分+树状数组
    计算机组成原理知识总结
    HDU 5155 Harry And Magic Box --DP
    【Python数据分析】简单爬虫 爬取知乎神回复
    《查拉图斯特拉如是说》读书笔记
    POJ 3384 Feng Shui --直线切平面
    POJ 2540 Hotter Colder --半平面交
  • 原文地址:https://www.cnblogs.com/fanqisoft/p/10596275.html
Copyright © 2011-2022 走看看