SpringBoot测试基类包括mockMvc使用get和post请求

SpringBoot测试基类

类上方

@RunWith(SpringRunner.class)
@SpringBootTest(classes = DshareApplication.class)(class名填写你的启动类名)
@WebAppConfiguration

类中必填信息

@Autowired
public MockHttpSession session;

@Autowired
public WebApplicationContext wac;

public MockMvc mockMvc;

@Before
public void setup() throws Exception {
	this.mockMvc = MockMvcBuilders.webAppContextSetup(this.wac).build();
	session.setAttribute(UserConstants.CURR_LOGIN_USER, user);//session存放用户信息
}

/**
*用于json格式的数据格式化
/
public static String formatJson(String jsonStr) {
	if (null == jsonStr || "".equals(jsonStr))
		return "";
	StringBuilder sb = new StringBuilder();
	char last = '\0';
	char current = '\0';
	int indent = 0;
	for (int i = 0; i < jsonStr.length(); i++) {
		last = current;
		current = jsonStr.charAt(i);
		switch (current) {
		case '{':
		case '[':
			sb.append(current);
			sb.append('\n');
			indent++;
			addIndentBlank(sb, indent);
			break;
		case '}':
		case ']':
			sb.append('\n');
			indent--;
			addIndentBlank(sb, indent);
			sb.append(current);
			break;
		case ',':
			sb.append(current);
			if (last != '\\') {
				sb.append('\n');
				addIndentBlank(sb, indent);
			}
			break;
		default:
			sb.append(current);
		}
	}

	return sb.toString();
}

private static void addIndentBlank(StringBuilder sb, int indent) {
	for (int i = 0; i < indent; i++) {
		sb.append('\t');
	}
}
--------------------------------post和get请求方式---------------------------------
String uri = "/api/article/sharedList";
	// String contentAsString =
	// this.mockMvc.perform(post(uri).session(session)).andExpect(status().isOk()).andReturn()
	// .getResponse().getContentAsString(); //post请求
	String contentAsString = this.mockMvc  
			.perform(MockMvcRequestBuilders.get(uri).param("tenantId", "1").param("toTenantId", "2"))
			.andExpect(status().isOk()).andReturn().getResponse().getContentAsString(); //get请求


----------------------------json格式的字符串------------------------------------
			string json = "[{\"a\":\"111\",\"b\":\"222\",\"c\":\"333\"},{\"a\":\"1000\",\"b\":\"2000\",\"c\":\"000\"},{\"a\":\"999\",\"b\":\"300\",\"c\":\"700\"}]";
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值