美文网首页
spring-helloworld

spring-helloworld

作者: 洛小白洛公子 | 来源:发表于2018-07-06 20:05 被阅读0次
    项目目录
    • src/main/resources 下的程序入口:DemotestApplication
    • src/main/resources下的配置文件:application.properties
    • src/test/下的测试接口:DemotestApplicationTests
    引入Web模块

    当前pom.xml中

    <dependencies>
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-starter</artifactId>
            </dependency>
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-starter-web</artifactId>
            </dependency>
    
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-starter-test</artifactId>
                <scope>test</scope>
            </dependency>
        </dependencies>
    
    • spring-boot-starter:核心模块,包括自动配置支持,日志和
    • spring-boot-starter-test:测试模块,包括JUnit,Hamcrest,Mockito
    • spring-boot-starter-web:web模块

    编写HelloWorld服务

    创建HellController类

    启动主程序,打开浏览器访问http://localhost:8080/hello,可以看到页面输出Hello World

    编写单元测试用例

    @RunWith(SpringJUnit4ClassRunner.class)
    @SpringApplicationConfiguration(classes = MockServletContext.class)
    @WebAppConfiguration
    public class DemotestApplicationTests {
    
        private MockMvc mvc;
    
        @Before
        public void setUp() throws Exception {
            mvc = MockMvcBuilders.standaloneSetup(new HelloConteroller()).build();
        }
    
        @Test
        public void getHello() throws Exception {
            mvc.perform(MockMvcRequestBuilders.get("/hello")
                    .accept(MediaType.APPLICATION_JSON))
                    .andExpect(status().isOk())
                    .andExpect(content().string(equalTo("Hello World")));
        }
    
    }
    
    

    使用MockServletContext来创建一个空的WebApplicationContext,这样我们创建的HellController就可以在@Before函数中创建并传递到MockMvcBuilders.standaloneSetup函数中。

    注意引入下面的内容,让status、context、equalTo函数可用

    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;
    

    相关文章

      网友评论

          本文标题:spring-helloworld

          本文链接:https://www.haomeiwen.com/subject/tcgbuftx.html