简单粗暴——Spring boot测试类编写

Spring boot 测试类,入手即用!!!


package cn.com.sinosoft.web.test;

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.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.web.context.WebApplicationContext;

import static org.springframework.test.web.servlet.request.MockMvcRequestBuilders.delete;
import static org.springframework.test.web.servlet.request.MockMvcRequestBuilders.get;
import static org.springframework.test.web.servlet.request.MockMvcRequestBuilders.post;
import static org.springframework.test.web.servlet.result.MockMvcResultHandlers.print;
import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.status;
import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.view;
import static org.springframework.test.web.servlet.setup.MockMvcBuilders.webAppContextSetup;

import cn.com.sinosoft.Web_StartApplication;

@SpringBootTest(classes = Web_StartApplication.class)
@RunWith(SpringJUnit4ClassRunner.class)
@WebAppConfiguration
public class TestConsumerUserController {

	private MockMvc mockMvc;

	@Autowired
	protected WebApplicationContext wac;

	@Before
	public void setup() {
		this.mockMvc = webAppContextSetup(this.wac).build();// 获取mockMvc实例
	}

	@Test
	public void simple() throws Exception {
	
		// 请求参数
		String requestBody = "{\"nodecode\":\"999\", \"nodename\":\"测试wang\", \"parentcode\":\"测试\", \"url\":\"/consumer/user/addmenu\"}";

		// 执行一个RequestBuilder请求
		mockMvc.perform(post("/consumer/user/addmenu").contentType(MediaType.APPLICATION_JSON).content(requestBody))  
		        .andExpect(view().name("login")) // 验证返回视图是否是"login"
				.andDo(print())// 打印结果到控制台
				.andExpect(status().isOk());// 验证响应的状态码是否 200

	
	}
}

上面代码中@SpringBootTest(classes = Web_StartApplication.class) 这里的类为Spring boot启动类,此方式为post方式请求,如果是get方式请求,需要简单改写代码,如果有不明白的可以留言哈!

猜你喜欢

转载自blog.csdn.net/m0_38016299/article/details/78022664