【发布时间】:2018-07-23 20:29:37
【问题描述】:
我想检查 JSON 响应是否至少有效,并且找不到正确的方法来使用 REST Assured。
我在REST Assured examples 中阅读了很多关于matchesJsonSchemaInClasspath 的内容,但我还不想编写整个 JSON 架构。
get("/products").
then().
assertThat().
body(matchesJsonSchemaInClasspath("products-schema.json"));
如果不检查任何格式错误的 JSON 的检查是否已通过 - 所以即使 JSON 无效,我也可以检查字段值,或者,例如数组大小。
import org.junit.jupiter.api.Test;
import static io.restassured.RestAssured.get;
import static org.hamcrest.core.Is.is;
public class RestEndpointTest{
@Test
public void basic_rest_check() {
get("/my_endpoint").
then().
assertThat().
body("size()", is(2)).
statusCode(200);
}
}
即使响应也通过了测试:
[{},{}]MALFORMED
【问题讨论】:
标签: java json rest rest-assured