1、Service类单元测试
package com.ps.uzkefu;
import com.ps.uzkefu.apps.ctilink.ommodel.Event;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.redisson.api.RBlockingQueue;
import org.redisson.api.RedissonClient;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.test.context.junit4.SpringRunner;
//wzw
@RunWith(SpringRunner.class)
@SpringBootTest(classes = com.ps.uzkefu.CtiLinkApplication.class)
public class CtilinkApplicationTests {
@Autowired
RedissonClient redissonClient;
@Test
public void contextLoads() {
RBlockingQueue<Event> queue = redissonClient.getBlockingQueue("anyQueue");
boolean result = queue.offer(new Event());
System.out.println(result);
}
}
2、Controller测试
package com.ps.uzkefu;
/**
* Created by Administrator on 2018/6/24 0024.
*/
import com.fasterxml.jackson.databind.ObjectMapper;
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.autoconfigure.web.servlet.AutoConfigureMockMvc;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.http.MediaType;
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.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;
import static org.junit.Assert.*;
@RunWith(SpringRunner.class)
@SpringBootTest(classes = UzkefuApplication.class) //这里是启动类
@AutoConfigureMockMvc
@WebAppConfiguration
public class StudentControllerTest {
@Autowired
private WebApplicationContext context;
private MockMvc mvc;
private ObjectMapper mapper = new ObjectMapper();
@Before
public void setupMockMvc() throws Exception {
mvc = MockMvcBuilders.webAppContextSetup(context).build();
}
@Test
public void getStudentList() throws Exception {
String url = "/user/menu/update";//访问url
ResultActions resultActions = mvc.perform(MockMvcRequestBuilders.get(url)).andExpect(MockMvcResultMatchers.status().isOk());
MvcResult mvcResult = resultActions.andReturn();
String content = mvcResult.getResponse().getContentAsString();
System.out.println(content);
String expectedResult = "1";//预期返回结果
mvcResult = mvc.perform(MockMvcRequestBuilders.get(url).accept(MediaType.TEXT_HTML_VALUE))
.andReturn();
//访问返回状态
int status = mvcResult.getResponse().getStatus();
//接口返回结果
//打印结果和状态
System.out.println(status);
//断言预期结果和状态
Long id =1l;
//调用接口,传入添加的用户参数
mvc.perform(MockMvcRequestBuilders.get(url)
.contentType(MediaType.APPLICATION_JSON_UTF8)
.content(mapper.writeValueAsString(id)))
.andExpect(MockMvcResultMatchers.status().isOk())
.andDo(MockMvcResultHandlers.print());
}
}