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 单元测试

  • 相关阅读:
    Windows 7 x64环境下SDK Manager闪退的解决方法
    Android 开发环境下载地址 -- 百度网盘 adt-bundle android-studio sdk adt 下载
    【智能家居篇】wifi网络结构(下)
    mac 查看python路径
    制作NGUI动态字体
    Mac OS 10.10.3下Apache + mod_wsgi配置【一】
    归档日志
    Cocos2D-X2.2.3学习笔记12(瞬时动作)
    合并两个已经排好序的不等长的数组
    JSON-JSON字符串转换成JSON对象、JSON对象数组、java实体类以及保存到List列表中
  • 原文地址:https://www.cnblogs.com/shirui/p/9286042.html
Copyright © 2011-2022 走看看