• spring boot——MockMvc的用法 (SpringBoot 1.5.18)下测试通过


    spring boot——MockMvc的用法

     
    1.pom配置
    <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
    </dependency>

    2.所需对象及Controller

    public class User {
        private String id;
        private String username;
        private Date birthday;  
    
        public User(String id, String username) {
            this.id = id;
            this.username = username;
        }
    
        //get/set
    }

    构造一个queryUserList服务

    @RestController
    @RequestMapping(value="/user")
    public class UserController {
    
                @GetMapping
                public List<User> queryUserList(){
                    //使用反射打印出信息
                    System.out.println(ReflectionToStringBuilder.toString(condition,ToStringStyle.MULTI_LINE_STYLE));
                    List<User> users = new ArrayList<>();
                    users.add(new User("1","张三"));
                    users.add(new User("2","李四"));
                    users.add(new User("3","王五"));
                    return users;
                }
        }

    编写mockmvc测试用例

    @RunWith(SpringRunner.class)
    @SpringBootTest
    public class UserControllerTest {
    
        //伪造mvc环境
        @Autowired
        private WebApplicationContext mac;
    
        private MockMvc mockMvc;
    
        @Before
        public void setup() {
            mockMvc = MockMvcBuilders.webAppContextSetup(mac).build();
        }
    
        @Test
        public void whenGenInfoSuccess() throws Exception{
            String result = mockMvc.perform(get("/user")
                    .contentType(MediaType.APPLICATION_JSON_UTF8)) 
                    .andExpect(status().isOk())
                    .andReturn().getResponse().getContentAsString();
                    System.out.println(result);
        }
    }

    原文地址:http://blog.51cto.com/mazongfei/2334045

  • 相关阅读:
    初识 Rabbitmq
    Lambda表达式(C语言-gcc编译器)
    二叉树转换成双向链表
    进程的内存分布
    Linux shell之数组
    Ubuntu 使用Gparted工具扩大第一分区方法步骤
    Android源码编译出错解决办法
    IIC总线解析
    VirtualBox Ubuntu虚拟机串口编程
    ubuntu虚拟机上解决克隆github代码慢的方法
  • 原文地址:https://www.cnblogs.com/kelelipeng/p/10178004.html
Copyright © 2020-2023  润新知