如何使用Rest Assured逐行打印,在TestNG中获取API响应?

时间:2018-03-28 21:22:27

标签: java eclipse api rest-assured rest-assured-jsonpath

我创建了一个程序来从URL获取API响应。

但由于某种原因,它将在一条长线上打印出来。有没有办法按照我在邮递员中看到的方式将其打印出来?我想我的意思是,如果有办法看到API服务器的响应逐行打印而不是一条长行。

    ResponseBody body = response.getBody();
    System.out.println("Response Body is: " + body.asString());

服务器响应是

[RemoteTestNG] detected TestNG version 6.13.1
Status code is 200
Response Body is: 
 {"request_id":"Z36ec5ee76a4788bfe83655edbbe9f0","status":"OK","data":{ONE LONG STRING OF DATA WITH NO END IN SIGHT!} 

2 个答案:

答案 0 :(得分:1)

您可以使用Response类的prettyPrint方法。您必须打印的状态。

答案 1 :(得分:0)

(回应评论) 如果您的API调用返回JSON响应,则可以使用JSON验证器模块。

它的作用是:您提供JSON 架构,并将其与响应进行比较。 JSON模式语法在那里定义:http://json-schema.org/latest/json-schema-validation.html(它看起来比它实际上更复杂),这里有一些例子http://json-schema.org/examples.html。您可以在模式中定义字段是"required",还有"type"字段(字符串,整数等)以及许多其他内容!

这是一个简单的教程,帮助我使用Rest-Assured实现它:https://blog.jayway.com/2013/12/10/json-schema-validation-with-rest-assured/