最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

spring-mvc/springboot使用MockMvc對(duì)controller進(jìn)行測(cè)試

 更新時(shí)間:2018年11月14日 10:49:57   作者:火光閃耀  
這篇文章主要介紹了spring-mvc/springboot使用MockMvc對(duì)controller進(jìn)行測(cè)試,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧

網(wǎng)上基本都是參考官方的使用方式,使用了import static,個(gè)人感覺(jué)這種方式特別不好,代碼提示性不友好。所以在此進(jìn)行說(shuō)明,也方便自己以后使用。

1. 引入spring-test相關(guān)jar包,springboot只需引入spring-boot-starter-test即可

    <dependency>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-starter-test</artifactId>
      <scope>test</scope>
    </dependency>

2. 寫(xiě)好controller,開(kāi)始寫(xiě)test類(lèi)

import org.front.server.Application;
import org.front.server.web.control.TestController;
import org.hamcrest.Matchers;
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.SpringApplicationConfiguration;
import org.springframework.http.MediaType;
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
import org.springframework.test.context.web.WebAppConfiguration;
import org.springframework.test.web.servlet.MockMvc;
import org.springframework.test.web.servlet.request.MockMvcRequestBuilders;
import org.springframework.test.web.servlet.result.MockMvcResultHandlers;
import org.springframework.test.web.servlet.result.MockMvcResultMatchers;
import org.springframework.test.web.servlet.setup.MockMvcBuilders;
import org.springframework.web.context.WebApplicationContext;
//網(wǎng)上很多會(huì)在這里使用import static,主要導(dǎo)入的是MockMvcRequestBuilders,MockMvcResultMatchers,Matchers這三個(gè)類(lèi)中的方法。
/**
 * @author zz
 * @date 2017年7月4日
 * 
 */
@RunWith(SpringJUnit4ClassRunner.class)
//@SpringApplicationConfiguration(classes = MockServletContext.class)//這個(gè)測(cè)試單個(gè)controller,不建議使用
@SpringApplicationConfiguration(classes = Application.class)//這里的Application是springboot的啟動(dòng)類(lèi)名。
@WebAppConfiguration
public class ApplicationTests {
  @Autowired
  private WebApplicationContext context;
  private MockMvc mvc;
  
  @Before
  public void setUp() throws Exception {
 //    mvc = MockMvcBuilders.standaloneSetup(new TestController()).build();
    mvc = MockMvcBuilders.webAppContextSetup(context).build();//建議使用這種
  }
  @Test
  public void test1() throws Exception {
    mvc.perform(MockMvcRequestBuilders.get("/data/getMarkers")
        .contentType(MediaType.APPLICATION_JSON_UTF8)
        .param("lat", "123.123").param("lon", "456.456")
        .accept(MediaType.APPLICATION_JSON))
        .andExpect(MockMvcResultMatchers.status().isOk())
        .andDo(MockMvcResultHandlers.print())
        .andExpect(MockMvcResultMatchers.content().string(Matchers.containsString("SUCCESS")));
    
  }
}

相信這樣,基本開(kāi)發(fā)過(guò)javaweb的就都能看懂了。通過(guò)方法的字面意思應(yīng)該都能看懂方法含義,如果實(shí)在不懂請(qǐng)看源碼或者官方API。

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • 自己動(dòng)手在Spring-Boot上加強(qiáng)國(guó)際化功能的示例

    自己動(dòng)手在Spring-Boot上加強(qiáng)國(guó)際化功能的示例

    這篇文章主要介紹了自己動(dòng)手在Spring-Boot上加強(qiáng)國(guó)際化功能的示例,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2018-04-04
  • 輕松掌握J(rèn)ava工廠模式、抽象工廠模式

    輕松掌握J(rèn)ava工廠模式、抽象工廠模式

    這篇文章主要幫助大家輕松掌握J(rèn)ava工廠模式、抽象工廠模式,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2016-10-10
  • SpringBoot整合Zookeeper詳細(xì)教程

    SpringBoot整合Zookeeper詳細(xì)教程

    Curator是Netflix公司開(kāi)源的?套zookeeper客戶端框架,Curator是對(duì)Zookeeper?持最好的客戶端框架。Curator封裝了?部分Zookeeper的功能,?如Leader選舉、分布式鎖等,減少了技術(shù)?員在使?Zookeeper時(shí)的底層細(xì)節(jié)開(kāi)發(fā)?作
    2022-12-12
  • 劍指Offer之Java算法習(xí)題精講二叉樹(shù)專(zhuān)題篇下

    劍指Offer之Java算法習(xí)題精講二叉樹(shù)專(zhuān)題篇下

    跟著思路走,之后從簡(jiǎn)單題入手,反復(fù)去看,做過(guò)之后可能會(huì)忘記,之后再做一次,記不住就反復(fù)做,反復(fù)尋求思路和規(guī)律,慢慢積累就會(huì)發(fā)現(xiàn)質(zhì)的變化
    2022-03-03
  • SSM框架流程及原理分析

    SSM框架流程及原理分析

    本文給大家分享小編一些心得體會(huì),主要是學(xué)習(xí)SSM框架之后的收獲吧,重點(diǎn)給大家介紹SSM框架流程以及原理分析,通過(guò)圖文實(shí)例相結(jié)合給大家介紹的非常詳細(xì),需要的朋友參考下吧
    2021-06-06
  • 一文詳解SpringBoot如何使用pageHelper做分頁(yè)處理

    一文詳解SpringBoot如何使用pageHelper做分頁(yè)處理

    分頁(yè)是常見(jiàn)大型項(xiàng)目都需要的一個(gè)功能,PageHelper是一個(gè)非常流行的MyBatis分頁(yè)插件,下面就跟隨小編一起來(lái)了解下SpringBoot是如何使用pageHelper做分頁(yè)處理的吧
    2025-03-03
  • IDEA2020.3創(chuàng)建web工程的完整步驟

    IDEA2020.3創(chuàng)建web工程的完整步驟

    這篇文章主要給大家介紹了關(guān)于IDEA2020.3創(chuàng)建web工程的完整步驟,文中通過(guò)圖文介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2021-01-01
  • spring boot動(dòng)態(tài)加載Echart餅狀圖

    spring boot動(dòng)態(tài)加載Echart餅狀圖

    這篇文章主要為大家詳細(xì)介紹了spring boot動(dòng)態(tài)加載Echart餅狀圖,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2019-12-12
  • 深入理解Java 對(duì)象和類(lèi)

    深入理解Java 對(duì)象和類(lèi)

    下面小編就為大家?guī)?lái)一篇深入理解Java 對(duì)象和類(lèi)。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2016-05-05
  • Spring Boot外部化配置實(shí)戰(zhàn)解析

    Spring Boot外部化配置實(shí)戰(zhàn)解析

    這篇文章主要介紹了Spring Boot外部化配置實(shí)戰(zhàn)解析,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2019-06-06

最新評(píng)論

垫江县| 荆门市| 贞丰县| 天祝| 迁安市| 潮州市| 资阳市| 什邡市| 宜城市| 全南县| 鄯善县| 许昌市| 石楼县| 诸暨市| 江阴市| 米林县| 资阳市| 亚东县| 英德市| 珠海市| 石河子市| 马尔康县| 仙居县| 前郭尔| 剑川县| 望奎县| 吉首市| 鄱阳县| 西安市| 客服| 溧水县| 昌乐县| 平果县| 滦南县| 读书| 钟祥市| 扎鲁特旗| 内乡县| 泌阳县| 繁峙县| 林口县|