zoukankan      html  css  js  c++  java
  • spring-boot单元测试

    1、pom.xml中添加配置spring-boot-starter-test

    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-test</artifactId>
        <scope>test</scope>
    </dependency>

    2、在src/main/java目录下创建Controller

    package com.generalichina.cimc.controller;
    
    import org.springframework.web.bind.annotation.RequestMapping;
    import org.springframework.web.bind.annotation.RestController;
    
    @RestController
    public class IndexController {
        @RequestMapping("/index")
        public String index() {
            return "index";
        }
    }

    3、在src/test/java目录下创建Controller的测试类

    package com.generalichina.cimc.controller;
    
    import org.junit.Before;
    import org.junit.Test;
    import org.junit.runner.RunWith;
    import org.springframework.boot.test.context.SpringBootTest;
    import org.springframework.http.MediaType;
    import org.springframework.test.context.junit4.SpringRunner;
    import org.springframework.test.web.servlet.MockMvc;
    import org.springframework.test.web.servlet.request.MockMvcRequestBuilders;
    import org.springframework.test.web.servlet.setup.MockMvcBuilders;
    import static org.hamcrest.Matchers.equalTo;
    import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.content;
    import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.status;
    @RunWith(SpringRunner.class)
    @SpringBootTest
    public class IndexControllerTests {
        //    @Autowired
    //    private WebApplicationContext context;
    
        //mock api 模拟http请求
        private MockMvc mockMvc;
    
        //初始化工作
        @Before
        public void setUp() {
            //独立安装测试
            mockMvc = MockMvcBuilders.standaloneSetup(new IndexController()).build();
            //集成Web环境测试(此种方式并不会集成真正的web环境,而是通过相应的Mock API进行模拟测试,无须启动服务器)
            //mockMvc = MockMvcBuilders.webAppContextSetup(context).build();
        }
    
        //测试
        @Test
        public void index() throws Exception {
            mockMvc.perform(MockMvcRequestBuilders.get("/index")
                    .accept(MediaType.APPLICATION_JSON))
                    .andExpect(status().isOk())
                    .andExpect(content().string(equalTo("index")));
        }
    
    }

    运行index测试:

    显示测试通过,ok

  • 相关阅读:
    ZJOI 2019 划水记
    【博弈论】浅谈泛Nim游戏
    HZNU ACM一日游 2019.3.17 【2,4,6-三硝基甲苯(TNT)】
    BZOJ 1008 越狱 组合数学
    BZOJ 1036 树的统计Count 树链剖分模板题
    BZOJ 1012 最大数maxnumber 线段树
    BZOJ 1001 狼抓兔子 平面图的最小割
    SGU---107 水题
    欧拉回路模板
    hdu-3397 Sequence operation 线段树多种标记
  • 原文地址:https://www.cnblogs.com/loaderman/p/10233088.html
Copyright © 2011-2022 走看看