From 69da168fc1b4e81693e5399b1ea7a03b7ed00fc9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=A6=BE=E5=87=A0=E6=B5=B7?= Date: Fri, 24 Jul 2020 13:48:50 +0800 Subject: [PATCH] =?UTF-8?q?=E6=8A=BD=E7=A6=BBjson=20->=20Response=20?= =?UTF-8?q?=E5=AF=B9=E8=B1=A1=E7=9A=84=E6=96=B9=E6=B3=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/test/java/cn/celess/blog/BaseTest.java | 34 +++++++++++++++++++++- 1 file changed, 33 insertions(+), 1 deletion(-) diff --git a/src/test/java/cn/celess/blog/BaseTest.java b/src/test/java/cn/celess/blog/BaseTest.java index 50bcad4..31e9c86 100644 --- a/src/test/java/cn/celess/blog/BaseTest.java +++ b/src/test/java/cn/celess/blog/BaseTest.java @@ -10,6 +10,8 @@ import org.junit.After; 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; @@ -18,13 +20,15 @@ import org.springframework.test.context.ActiveProfiles; import org.springframework.test.context.junit4.SpringRunner; import org.springframework.test.context.web.WebAppConfiguration; 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.MockHttpServletRequestBuilder; -import org.springframework.test.web.servlet.request.MockMvcRequestBuilders; import org.springframework.test.web.servlet.setup.MockMvcBuilders; import org.springframework.web.context.WebApplicationContext; +import java.io.IOException; +import java.io.UnsupportedEncodingException; import java.util.UUID; import static cn.celess.blog.enmu.ResponseEnum.SUCCESS; @@ -44,6 +48,8 @@ import static org.springframework.test.web.servlet.result.MockMvcResultMatchers. @ActiveProfiles("test") public class BaseTest { + private final Logger logger = LoggerFactory.getLogger(this.getClass()); + protected MockMvc mockMvc; protected final static String Code = "code"; protected final static String Result = "result"; @@ -120,8 +126,10 @@ public class BaseTest { assertNotNull(token); return token; } catch (Exception e) { + logger.error("测试登录错误"); e.printStackTrace(); } + assertNotNull(str); return null; } @@ -133,6 +141,7 @@ public class BaseTest { try { // 测试getMockData方法 assertNotNull(getMockData(get("/headerInfo"))); + getMockData((get("/headerInfo"))).andDo(result -> assertNotNull(getResponse(result))); } catch (Exception e) { e.printStackTrace(); } @@ -191,4 +200,27 @@ public class BaseTest { } return mockMvc.perform(builder).andExpect(status().isOk()); } + + protected Response getResponse(String json) { + Response response = null; + try { + response = mapper.readValue(json, new TypeReference>() { + }); + } catch (IOException e) { + logger.error("接续json Response对象错误,json:[{}]", json); + e.printStackTrace(); + } + assertNotNull(response); + return response; + } + + protected Response getResponse(MvcResult result) { + try { + return getResponse(result.getResponse().getContentAsString()); + } catch (UnsupportedEncodingException e) { + logger.error("接续json Response对象错误,result:[{}]", result); + e.printStackTrace(); + } + return null; + } }