zoukankan      html  css  js  c++  java
  • SpringBoot_07_Springboot test 使用mockito进行web测试

    一、前言

    使用mockito测试框架可以方便的进行web测试

    二、用法实例

    package com.ray.weixin.qy.controller;
    
    import com.ray.weixin.qy.ApplicationTests;
    import lombok.extern.slf4j.Slf4j;
    import org.junit.Test;
    import org.springframework.http.MediaType;
    
    import static org.springframework.test.web.servlet.request.MockMvcRequestBuilders.*;
    import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.jsonPath;
    import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.status;
    
    /**
     * @author : shira
     * @date : 2018/7/8
     * @time : 15:03
     * @desc :
     **/
    @Slf4j
    public class UserControllerTest  extends ApplicationTests {
    
    
    
    
        /**
         * 1.新增用户信息
         * @throws Exception
         */
        @Test
        public void testCreate() throws Exception {
            String content = "{
    " +
                    ""userid":"sunwukong",
    " +
                    ""name":"孙悟空",
    " +
                    ""department":[2],
    " +
                    ""position":"总经理",
    " +
                    ""mobile":"17636763734",
    " +
                    ""gender":"0",
    " +
                    ""email":"17636763734@qq.com"
    " +
                    "
    " +
                    "
    " +
                    "}";
    
            String result = mockMvc.perform(
                    post("/user")
                            .content(content)
                            .contentType(MediaType.APPLICATION_JSON_UTF8))
                    .andExpect(status().isOk())
                    .andExpect(jsonPath("$.status").value(0))
                    .andReturn().getResponse().getContentAsString();
    
            log.info(result);
        }
    
    
        /**
         * 2.删除用户信息
         * @throws Exception
         */
        @Test
        public void testDelete() throws Exception {
    
            String userId="sunwukong";
    
            String result = mockMvc.perform(
                    delete("/user")
                            .param("userId", userId)
                            .contentType(MediaType.APPLICATION_JSON_UTF8))
                    .andExpect(status().isOk())
                    .andExpect(jsonPath("$.status").value(0))
                    .andReturn().getResponse().getContentAsString();
    
            log.info(result);
        }
    
    
        /**
         * 3.修改用户信息
         * @throws Exception
         */
        @Test
        public void testUpdate() throws Exception {
            String content = "{
    " +
                    ""userid":"sunwukong",
    " +
                    ""name":"孙悟空",
    " +
                    ""department":[2],
    " +
                    ""position":"总经理",
    " +
                    ""mobile":"17636763734",
    " +
                    ""gender":"0",
    " +
                    ""email":"17636763734@qq.com"
    " +
                    "
    " +
                    "
    " +
                    "}";
            String result = mockMvc.perform(
                    put("/user")
                            .content(content)
                            .contentType(MediaType.APPLICATION_JSON_UTF8))
                    .andExpect(status().isOk())
                    .andExpect(jsonPath("$.status").value(0))
                    .andReturn().getResponse().getContentAsString();
    
            log.info(result);
        }
    
    
        /**
         * 4.获取用户信息
         * @throws Exception
         */
        @Test
        public void testGet() throws Exception {
    
            String userId="sunwukong";
    
            String result = mockMvc.perform(
                    get("/user")
                            .param("userid", userId)
                            .contentType(MediaType.APPLICATION_JSON_UTF8))
                    .andExpect(status().isOk())
                    //.andExpect(jsonPath("$.length()").value(3))
                    .andExpect(jsonPath("$.status").value(0))
                    .andReturn().getResponse().getContentAsString();
    
            log.info(result);
        }
    
    }
    View Code

    三、用法详解

    四、参考资料

    1.SpringBoot与JUnit+Mockito 单元测试

  • 相关阅读:
    利用递归分割(Split)字符串
    SQL Server2012 T-SQL基础教程--读书笔记(1-4章)
    kindeditor编辑器的使用
    echarts绘制四川地图
    Windows下搭建PHP开发环境(Apache+PHP+MySQL)+调试工具Xdebug的配置
    给搜索关键字添加高亮,加以颜色区分
    SQL 生成6位随机数并MD5加密输出
    微信小程序登录 .net 后端实现
    钉钉小程序http post 请求
    浅谈Web Api配合SignalR的跨域支持
  • 原文地址:https://www.cnblogs.com/shirui/p/9286042.html
Copyright © 2011-2022 走看看