1. 程式人生 > >MockMvc模擬請求進行測試

MockMvc模擬請求進行測試

1.ContextConfiguration載入配置檔案的時候,也要載入SpringMvc的配置檔案

2.模擬請求的時候需要一個很重要的物件org.springframework.test.web.servlet.MockMvc   MockMvc,該物件被初始化時需要方法 MockMvcBuilders.webAppContextSetup(context).build();來建立, 而context是Spring容器本身,獲取方式為:在該測試類類名上添加註解@WebAppConfiguration,然後給WebApplicationContext context物件添加註解@AutoWired。

3.使用mockMvc物件進行模擬請求時,使用它的perform方法進行模擬

4.傳一段程式碼,省的以後忘了

@RunWith(SpringJUnit4ClassRunner.class) //使用junit4進行測試  
@WebAppConfiguration
@ContextConfiguration(locations={"classpath:applicationContext.xml","file:src/main/webapp/WEB-INF/springDispatcherServlet-servlet.xml"}) //載入配置檔案 
public class MvcTest {
	//虛擬請求
	MockMvc mockMvc;
	
	//傳入springMvc的IOC
	@Autowired
	WebApplicationContext context;
	
	@Before
	public void init() {
		mockMvc = MockMvcBuilders.webAppContextSetup(context).build();
	}
	
	@Test
	public void testPage() throws Exception {
		//模擬請求拿到返回值
		MvcResult result = mockMvc.perform(MockMvcRequestBuilders.get("/emps").param("pn", "5")).andReturn();
		//請求成功以後,請求域中會有PageInfo,我們來取出pageInfo進行驗證
		MockHttpServletRequest request = result.getRequest();
		PageInfo<Employee> pageInfo = (PageInfo) request.getAttribute("pageInfo");
		System.out.println("當前頁碼:"+pageInfo.getPageNum());
		System.out.println("總頁碼:"+pageInfo.getPages());
		System.out.println("總記錄數:"+pageInfo.getTotal());
		System.out.println("在頁面上需要連續顯示的頁碼:");
		int[] navigatepageNums = pageInfo.getNavigatepageNums();
		for (int i : navigatepageNums) {
			System.out.println(i);
		}
		
		List<Employee> list = pageInfo.getList();
		for (Employee employee : list) {
			System.out.println(employee);
		}
	}
}

相關推薦

MockMvc模擬請求進行測試

1.ContextConfiguration載入配置檔案的時候,也要載入SpringMvc的配置檔案2.模擬請求的時候需要一個很重要的物件org.springframework.test.web.servlet.MockMvc   MockMvc,該物件被初始化時需要方法 M

Junit4 模擬requert請求進行測試

package com.hytera.mrps.util; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import javax.

Loadrunner http JSON介面請求進行測試

Action() {     //首先呼叫web_reg_find()這個註冊函式,我們介面的正常返回結果都是<Code>0</Code>     web_reg_find("Search=Body", //定義查詢範圍     "SaveCount

SpringBoot使用MockMvc對Controller進行測試

spring-mvc springboot 使用MockMvc對controller進行測試 網上基本都是參考官方的使用方式,使用了import static,個人感覺這種方式特別不好,程式碼提示性不友好。所以在此進行說明,也方便自己以後使用。 1.引入spri

使用MockMVC與Junit進行單體測試

eval mvc obj abs nco tps 測試 nal pub 1、pom.xml追加 junit spring-test 2、測試共通類 @ContextConfiguration(locations = { "classpath:springframewo

使用jMeter構造大量並發HTTP請求進行微服務性能測試

用戶 req -o proto 二維 strip 9.png HR upload 比如我開發好了一個微服務,想測試其在大並發請求下的性能表現如何。 比較方便的一個做法是使用工具jMeter來構造這些請求。 創建一個新的工程: 創建一個新的Thread Group,下圖意思

Fiddler如何模擬弱網環境進行測試

1、模擬弱網環境 開啟Fiddler,Rules->Performance->勾選 Simulate Modem Speeds,勾選之後訪問網站會發現網路慢了很多 2、Fiddler弱網的原理 Rules—>Cutomize Rules開啟Cust

使用postman傳送第一個api請求,可以使用這個api進行測試!!

使用postman傳送第一個api請求? https://www.v2ex.com/p/7v9TEc53 v2ex是個論壇,技術人員經常會去看的一個論壇 是一個彙集各類奇妙好玩的話題和流行動向的網站。V2EX 提供了特別有用的小工具 [ ZEN ],幫助你掌握自己的時

使用模擬物件(Mock Object)技術進行測試驅動開發

敏捷開發 敏捷軟體開發又稱敏捷開發,是一種從上世紀 90 年代開始引起開發人員注意的新型軟體開發方法。和傳統瀑布式開發方法對比,敏捷開發強調的是在幾周或者幾個月很短的時間週期,完成相對較小功能,並交付使用。在專案週期內不斷改善和增強。 2001 年初,在美國猶他州雪鳥滑雪勝地,17 名程式設計大師分別代表

java 模擬瀏覽器進行get和post請求

package com.xueyoucto.xueyou; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.io.PrintWriter; im

curl post請求 , postman 模擬請求 , 線上測試工具模擬請求

1、curl傳送post 請求 function curl_post($url = '', $param = '') { if (empty($url) || empty($param)) { return false;

使用jMeter構造大量併發HTTP請求進行微服務效能測試

比如我開發好了一個微服務,想測試其在大併發請求下的效能表現如何。 比較方便的一個做法是使用工具jMeter來構造這些請求。 建立一個新的工程: 建立一個新的Thread Group,下圖意思是這個工程會使用3個執行緒同時發請求,每個請求執行一次。

spring-test單元測試(二)-進行struts action的請求單元測試

單元測試雖不強求,但你一旦養成習慣,你會愛上它。另外我們保證程式碼質量的兩個很重要的手段,一個是頭(單元測試)一個是尾(codereview)。那麼我們最常用的單元測試就是通過junit來進行,spring-test框架很好的集成了junit來進行這項工作,比如測試dao,

【Jmeter測試】使用Java請求進行Dubbo介面的測試

使用json檔案來構造測試資料 java程式只對json檔案進行解析 介面呼叫成功後,用json檔案中的期望資料來對介面返回資料進行比對,判斷呼叫是否成功 json檔案的定義 { "Connection": { "URL": "101.219.255.7

springboot+mockmvc對controlle進行單元測試

依賴 原Controller 建立對應的ControllerTest Spring測試框架提供MockMvc物件,可以在不需要客戶端-服務端請求的情況下進行MVC測試,完全在服務端這邊就可以執行Controller的請求,跟啟動了測試伺服器一樣。 測試開始之前需

模擬post進行url請求

tran empty style 字符 field ram lds fields post提交 /** * 模擬post進行url請求 * @param string $url * @param string $param */ function re

1.1 WEB API 在幫助文檔頁面進行測試

進行 for 技術分享 mode scrip pts itl reference ges 這篇文章http://www.cnblogs.com/landeanfen/p/5210356.html寫得比較詳細, 我就挑簡單的來說。 首先用這功能要在WEB API創建的幫助文檔

模擬對象測試——EasyMock

public arr call() current 驗證 實現 幫我 日誌輸出 解決 一、EasyMock 使用動態代理實現模擬對象創建,一般可以滿足以下測試需求 1、要測試的模塊依賴於其它自己控制不了的模塊,如第三方服務,其它組員在開發的服務等,它們都沒辦法配合你來測試;

模擬ab壓力測試

login lose exceptio 模擬 響應時間 min sta run pytho #!/usr/bin/env python# -*- coding:utf-8 -*-# 說明:"""api接口壓力測試url = "http://gd.wangfanwifi.co

安裝postman工具模擬請求

請求 src 分享 忽略 一次 img .cn 快捷 pos 擴展工具->: 註意,在創建快捷方式後,第一次打開這個工具,會讓你註冊信息,忽略它。關閉,重新打開postman工具,然後如下所示: 安裝postman工具模擬請求