【问题标题】:Check if JSON object exist (Postman)检查 JSON 对象是否存在(邮递员)
【发布时间】:2017-02-14 00:47:58
【问题描述】:

我正在尝试在 Postman 中编写一个测试,以检查我从服务器收到的响应中是否存在 JSON 密钥。

回复:

{
  "Result": 0,
  "ResponseStatus": {
    "ErrorCode": null,
    "Message": null,
    "StackTrace": null,
    "Errors": null
  },
  "ResponseHeader": {
    "Succeeded": true,
    "Errors": null
  },
  "SessionId": "XXX-XXX-XXX"
}

我想检查“结果、错误代码、消息、成功”等。

谢谢!

【问题讨论】:

  • 你有什么问题?你哪里有问题?
  • 分享你的后端API
  • @ZahidRahman — 为什么您需要了解后端 API 的详细信息才能回答有关针对已成功检索的 JSON 编写测试的问题?
  • @Quentin - “JSON 值检查”正在检查 json 值。 e.x : '"Succeeded": true' - 它将检查是否存在 true。我想检查是否显示成功。我想实现一个后端 api 测试(所以我会知道架构何时改变)

标签: javascript json rest postman


【解决方案1】:

您可以使用以下方法检查响应方案:

var jsonData = JSON.parse(responseBody);
tests['response json contain Results'] = _.has(jsonData, 'Results');

【讨论】:

  • 这是 Underscore.js 吗?你如何在 Postman 中使用这个库?
  • 下划线是内置的,不需要声明或要求它就可以工作
【解决方案2】:

根据您获得的响应正文,您可以为测试部分的请求编写简单的测试脚本。 您需要先解析您的 json 响应。脚本将如下所示:

var jsonData = JSON.parse(responseBody);
tests["Succeeded with value true"] = jsonData.ResponseHeader.Succeeded === true;

同样,您可以为其他检查编写测试。对于 sessionId,我建议您使用生成它的 sessionId 进行检查(将其存储在环境中并在此请求中检查)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2022-01-16
    • 2014-01-15
    • 1970-01-01
    • 1970-01-01
    • 2021-10-14
    • 1970-01-01
    • 2013-12-23
    相关资源
    最近更新 更多