zoukankan      html  css  js  c++  java
  • 使用MockMVC与Junit进行单体测试

    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方法

  • 相关阅读:
    Python 拼接字符串的6种方法总结:
    Python 基础
    蓝牙通信测试app之蓝牙通信(二)
    蓝牙通信测试app之蓝牙配对(一)
    对ZAxxx解压工具的简单逆向记录
    上传项目到GitHub---详细步骤
    面试复习
    JavaWeb基础一
    MySQL基础二---基础介绍
    JS——Date日期对象
  • 原文地址:https://www.cnblogs.com/deolin/p/7536858.html
Copyright © 2011-2022 走看看