package spring; import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; import org.junit.Before; import org.junit.Test; import org.junit.runner.RunWith; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.test.annotation.Rollback; import org.springframework.test.context.ContextConfiguration; import org.springframework.test.context.junit.jupiter.web.SpringJUnitWebConfig; import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; import org.springframework.test.web.servlet.MockMvc; 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.setup.MockMvcBuilders; import org.springframework.web.context.WebApplicationContext; import web.config.AppConfig; import web.config.SpringConfig; import javax.transaction.Transactional; //让测试运行于SpringMVC @RunWith(SpringJUnit4ClassRunner.class) @SpringJUnitWebConfig @ContextConfiguration(classes = {AppConfig.class, SpringConfig.class}) public class SpringMVCTest { private static Logger log = LogManager.getLogger(); private MockMvc mockMvc; @Autowired private WebApplicationContext wac; @Before public void setup() { mockMvc = MockMvcBuilders.webAppContextSetup(wac).build(); } @Test public void dataTable() throws Exception { ResultActions resultActions = mockMvc.perform(MockMvcRequestBuilders.get("/data/table").param("currentPage", "0").param("pageSize", "10").param("typeIds","33")); resultActions.andDo(MockMvcResultHandlers.print()).andReturn(); } @Test public void get() throws Exception { ResultActions resultActions=mockMvc.perform(MockMvcRequestBuilders.get("/menu/batch_R")); resultActions.andDo(MockMvcResultHandlers.print()).andReturn(); } @Test @Transactional public void save() throws Exception { ResultActions resultActions=mockMvc.perform(MockMvcRequestBuilders.post("/word/C").param("courseName","123").param("kana","456").param("chinese","789")); resultActions.andDo(MockMvcResultHandlers.print()).andReturn(); } @Test @Transactional @Rollback(false) public void update() throws Exception{ ResultActions resultActions=mockMvc.perform(MockMvcRequestBuilders.post("/word/U").param("id","1").param("courseName","123").param("kana","666").param("chinese","666")); resultActions.andDo(MockMvcResultHandlers.print()).andReturn(); } @Test @Transactional @Rollback(false) public void delete() throws Exception{ ResultActions resultActions=mockMvc.perform(MockMvcRequestBuilders.post("/word/D").param("id","1")); resultActions.andDo(MockMvcResultHandlers.print()).andReturn(); } }