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

  • 相关阅读:
    Django orm self 自关联表
    postgresql数据库导入导出
    celery在项目中的使用
    P3405 [USACO16DEC]Cities and States S 【map使用】
    P1030 求先序排列 【已知中序后序求先序】
    P1305 新二叉树 【寻找根节点进行先序遍历】
    P1229 遍历问题 【已知先序后序求中序种类】
    P1364 医院设置 【带权值的树的重心】
    P3884 [JLOI2009]二叉树问题 【离线tarjan或数的向上遍历】
    P1827 [USACO3.4]美国血统 American Heritage【树的遍历】
  • 原文地址:https://www.cnblogs.com/loaderman/p/10233088.html
Copyright © 2011-2022 走看看