Spring boot测试类

package com.example.localhost;

import org.junit.Before;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
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.SpringRunner;
import org.springframework.test.web.servlet.MockMvc;
import org.springframework.test.web.servlet.MvcResult;
import org.springframework.test.web.servlet.ResultActions;
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;


@RunWith(SpringRunner.class)
@SpringBootTest
public class LocalhostApplicationTests {
	private final Logger log = LoggerFactory.getLogger(LocalhostApplicationTests.class);
	@Autowired
	private WebApplicationContext context;
	MockMvc mockMvc;

	@Test
	public void contextLoads() {
	}

	@Before
	public void before(){
		mockMvc = MockMvcBuilders.webAppContextSetup(context).build(); //可以对所有的controller来进行测试
	}
	@Test
	public void testUserController(){
		String url = "/findAllUser";
		try {
			//1种
			MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders.post(url).accept(MediaType.APPLICATION_JSON))
					.andExpect(MockMvcResultMatchers.status().isOk())//返回的状态是200时
					.andDo(MockMvcResultHandlers.print())//打印出Request和Response的内容
					.andReturn();
			int status = mvcResult.getResponse().getStatus();//请求结果状态码
			String content = mvcResult.getResponse().getContentAsString();//将相应的数据转换为字符串
			log.info("status={}",status);
			log.info("content={}",content);


			//2种
			ResultActions resultActions =  mockMvc.perform(MockMvcRequestBuilders.post(url).accept(MediaType.APPLICATION_JSON));
			resultActions.andDo(MockMvcResultHandlers.print());
		} catch (Exception e) {
			e.printStackTrace();
		}


	}
}

猜你喜欢

转载自blog.csdn.net/voidL123/article/details/85039856