使用MockMVC与Junit进行单体测试
2024-08-27 05:30:10
1、pom.xml追加
junit
spring-test
2、测试共通类
@ContextConfiguration(locations = { "classpath:springframework/application-context.xml",
"classpath:springframework/dispatcherservlet-servlet.xml" })
@RunWith(SpringJUnit4ClassRunner.class)
@WebAppConfiguration
@Transactional
abstract public class TestCommon { private static final Logger LOG = LogManager.getLogger(); private MockMvc mockMvc; @Autowired
private WebApplicationContext wac; @Before
public void setUp() {
mockMvc = MockMvcBuilders.webAppContextSetup(wac).build();
} }
3、示例
public class MemberTest extends TestCommon { /**
* 请求:新增,请求方式:POST
*/
@Test
@Rollback(false)
public void add() throws Exception {
String uri = "/member/add";
Map<String, String> contentParams = new HashMap<>();
contentParams.put("name", "测试用姓名");
contentParams.put("sex", "男");
String jsonStr = new ObjectMapper().writeValueAsString(contentParams);
MockHttpServletResponse response = mockMvc.perform(
MockMvcRequestBuilders.post(uri).contentType(MediaType.APPLICATION_JSON_UTF8).content(jsonStr))
.andReturn().getResponse();
if (response.getStatus() != HttpServletResponse.SC_OK) {
fail("Http" + response.getStatus());
}
LOG.info(response.getContentAsString());
} }
4、如果想测试除post以外的请求,可以调用MockMvcRequestBuilders的get, put等方法
5、类似于URL中的“?page=2”的参数,可以调用MockMvcRequestBuilders的params方法
最新文章
- ubuntu下载工具uget和aria2
- Linux下,telnet命令如何退出
- Waiting Processed Cancelable ShowDialog (Release 2)
- BarEditItem ContentTemplate
- 2 CSS
- Nape的回调系统 nape.callbacks
- C#中Strings VS. StringBuilder
- Web---创建Servlet的3种方式、简单的用户注册功能
- Design Pattern ——Factory Method&;Abstract Factory
- Chrome真机调试步骤
- CSS3匹配屏幕横竖状态
- C part 1 -- 指令篇
- trove manual installation 翻译
- GUID的获取
- 安装配置rsync服务端
- InputStreamReader读取文件出现乱码
- 15_Python模块化编程_Python编程之路
- 对半导体制造(FAB)工种的全方位解析
- 停止node进程和查看react-native-cli
- VUE 组件通信总结