java-MockMvc,RestAssured和TestRestTemplate有什么区别?

就我所知,MockMvc只是测试Controller,并模拟Service层.

RestAssured和TestRestTemplate正在测试我们API的运行实例.

那是对的吗?
RestAssured和Spring Boot的TestRestTemplate有什么区别?

解决方法:

MockMvc是弹簧测试中的类之一.这主要用于控制器层的单元测试.不只是您的控制器类.这是用于发送控制器层的信号.但是您必须模拟服务和其他层.因此,它主要用于单元测试.

正如文档所述,TestRestTemplate还是弹簧测试的一部分,

Convenient alternative of {@link RestTemplate} that is suitable for
integration tests.

这可用于测试您的Rest Service /端点.主要区别之一是您将MockMvc用于单元测试,将TestRestTemplate用于集成测试.换句话说,使用MockMvc不需要服务器的运行实例,但是需要TestRestTemplate.

RestAssured是一个完全不同的框架.这与Spring无关.这是一个图书馆,它提供了多种方法来使用流畅的BDD样式界面测试任何REST服务.

上一篇:春季-为什么MockMVC和Mockito不能一起使用?


下一篇:java-jsonpath:JSON路径:$.id无值,例外:路径“ id”被应用于数组.数组不能具有属性