测试模拟发送虚拟请求

我们这里新建一个Controller然后在测试类中模拟发送一个虚拟请求。

@RestController
@RequestMapping("/books")
public class BookController {
    @GetMapping
    public String getById(){
        System.out.println("getById is running...");
        return "springboot";
    }
}

测试类

@SpringBootTest(webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT)
@AutoConfigureMockMvc
public class WebTest {
    @Test
    void test(){

    }
    @Test
    void getById(@Autowired  MockMvc mockMvc) throws Exception {
        MockHttpServletRequestBuilder builder= MockMvcRequestBuilders.get("/books");
        mockMvc.perform(builder);

    }

}



要想模拟发送虚拟请求,首先要有webEnvironment这个属性。然后因为是模拟所以得有一个@AutoConfigureMockMvc,有了这个注解之后MOockMvc这个对象就可以用了。然后就可以去执行方法perform(),perform需要一个参数builder,用来发送http://localhost:(rabdomport)/books这个请求的。

然后运行发现是有消息的,所以这个虚拟请求是发送成功的。

posted @ 2022-05-15 18:27  长情c  阅读(83)  评论(0)    收藏  举报