问题标签 [rest-assured-jsonpath]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
groovy - REST 保证仅从响应正文中获取地图值
想象一下我调用了一个 RESTful 服务,它在响应正文中返回它
我只需要获取映射键为“en”的值
所以我希望过滤后的结果是这样的
["Reason1 英文翻译", "Reason2 英文翻译"]
或者
{"Reason1 英文翻译", "Reason2 英文翻译"}
我尝试了下一个代码,但仍未完成
它返回
[{en=Reason1 英文翻译, es=Reason1 西班牙文翻译}, {en=Reason2 英文翻译, es=Reason2 西班牙文翻译}]
那么我怎样才能只获得与'en'相等的映射键条件匹配的映射值?
java - 使用路径方法使用放心获取价值
我想s.d.url
从下面的 JSON 中提取值。
我正在使用下面的语句,如使用 System.out.println 所示,但我没有得到结果。当字段本身包含“。”时,我该怎么做?
JSON
java - 在从 Oracle DB 中提取的 Json 主体中插入特定的 Json 键值
假设我有一个存储在 Oracle DB 中的示例 Json 请求正文,我将在 Java 代码中多次使用它(使用 RestAssured 执行 POST 方法)
示例 json 请求。前任:
场景:假设我有 50 个不同的测试用例,我将在其中使用相同的 Json 请求。但是对于所有 50 个 TC,只有“accountId”的值会发生变化。
一旦我与 DB 连接,将此 Json 请求存储在字符串中,我需要在每次执行 POST 方法之前单独更改“accountId”键的值。
注意:我尝试将字符串分成两部分,并每次都添加我所需的 AccountID 值。想知道是否有任何其他更好的方法让它变得简单。
json - 使用 reassured 在不存在密钥时解析 JSONArray
我正在使用 restassured 来测试我的休息 API,并且我有一个场景,我的休息 API 返回一个 JSONArray 而没有任何键值,如下所示。在浏览多个问题时,我还没有看到类似的 JSONArray 在没有键值的情况下被处理。RestAssured 支持验证这样的 JSON 吗?
[“Test_1 Bundle_01”、“Test_2 Bundle_02”、“Test_3 Bundle_03”]
java - 预期结果与实际结果不符 REST-assured
我正在测试changePassword()方法。我首先通过输入错误密码进行检查,然后在第二部分正确输入参数。但是,对于错误的密码,它给了我 body() 的错误。如果我log().body()它不会打印出任何东西,但状态代码匹配。如果我做body("errors[0]",equalTo("Wrong password")),它会向我显示此行的错误“预期的响应正文将被验证为JSON
,HTML
或者在响应中XML
没有content-type
定义。 ”
同样对于正确的参数,它说Expected status code <200> doesn't match actual status code <400>.
我不知道我可能给出错误的参数,似乎一切正常。谁能解释一下这些代码有什么问题?
谢谢!
更新:我在 Swagger 上检查了这个方法,效果很好。
rest-assured - $ 不要与 JsonPath 一起使用
我发布了一个带有 RestAssured 的 Json,并且在我需要验证所有字段都以正确的值存储在数据库中之后。我的 Json 是:
所以我有 :
我的第一个验证是:
为了验证字段“id”是否等于 1,它执行得不好,我更改为:
和相同的结果--->失败
拜托,你能给我你对测试所有 Json 的建议吗?仅供参考,我尝试申请:https ://github.com/json-path/JsonPath 。
非常感谢您提前,
此致,
java - 如何在groovy gpath中的符号(@)处转义
在使用 rest-assured 测试 REST API 时,我有一个非常具体的用例。我想从以下 JSON 响应中检索“@odata.type”的值;
我尝试了一些类似的东西
get(/path).then().body("value.@odata.type",hasItems("expected_velue"));
但最终得到这个错误
我怎样才能逃脱@odata.type
,以便将其视为单个属性来检索其值?
提前致谢
java - 如何使用带有 POST 方法的 Rest Assured 获取 REST API 端点的访问令牌,目前我收到 404 错误?
我正在尝试运行 POST 方法以使用 REST Assured Code 获取访问令牌。但它返回 404 错误。我的代码如下。POSTMAN 配置如下,尝试使用 Rest Assured 进行复制
我还附上了正在工作的 Postman 的屏幕截图,在此处输入图像描述
java - RestAssured - JsonPath 在给定过滤条件的情况下从对象数组中过滤匹配对象的属性
我正在使用放心为我的微服务编写集成测试。我有一个这样的 Json 有效负载,它是从它返回的。
给定 questionId 值,我需要找到 sessionquestion 的 id。然后我需要在我的断言中比较它们。给定 questionId 值,我很难从 sessionQuestion 中获取 id。我正在使用 JsonPath 来完成这件事。这是我的 Json 路径表达式。
这会引发错误。
我在这个在线评估器中尝试了相同的 Json 路径表达式,效果很好。我在用json-path-2.9.0.jar
我在这里做错了什么?非常感谢任何帮助。
java - 如何将 JSON 响应转换为 Java 列表 - 使用 Rest Assured 进行 API 测试
我有一个嵌套的 JSON 响应。JsonResponse 截图
我想从列表中获取第 0 个位置的字典,然后从中获取特定元素。例如,作为响应,{0} 和 {1},我希望得到完整的 {0}。然后从 {0},我只想提取“Id”值。
我不想每次都使用JsonPath.read(JsonResponse String, JSON Path)。所以寻找一些简单更好的选择。
如何将 JSON 响应转换为 Java 列表。以下是回应。