设置 rest 确保全局记录所有请求和响应

2022-09-01 06:31:56

我想默认为所有响应和请求启用日志记录。RestAssured

以下是我的工作:

RestAssured.requestSpecification = new RequestSpecBuilder().
        setBaseUri("api").
        setContentType(ContentType.JSON).
        build().
        log().all();
RestAssured.responseSpecification = new ResponseSpecBuilder().
        build().
        log().all();

requestSpecification工作正常,但与我得到:responseSpecification

无法配置日志记录,因为未定义请求规范。您可能滥用了该 API。

我真的不想在每次之后使用。log().all()


答案 1

我认为您需要查看日志然后测试失败,在这种情况下,请放心使用此配置:

RestAssured.enableLoggingOfRequestAndResponseIfValidationFails();


答案 2

将这行代码放在你的方法上,每个给定的调用都会创建一个日志,就像在每次给定之后使用log.all()一样:@BeforeClass

RestAssured.filters(new RequestLoggingFilter(), new ResponseLoggingFilter());


放心项目:
https://github.com/rest-assured/rest-assured/blob/master/rest-assured/src/main/java/io/restassured/filter/log/RequestLoggingFilter.java