Automated tests 有没有办法在Postman测试中检查JSON响应的结构?

Automated tests 有没有办法在Postman测试中检查JSON响应的结构?,automated-tests,postman,Automated Tests,Postman,基于Windows桌面上Postman GUI中给出的示例代码片段,我在Postman中编写了几个测试 主要是,我想检查响应中是否存在参数(确切地说,在那些我需要检查参数的特定值的情况下),我想知道是否有比我现在做的更好的方法 下面的测试显示了一个这样的示例,这只是其中的一小部分。实际的响应模式要大得多,所以我设想为每个API端点编写50-60行这样的检查 pm.test("Det details of a POI", function () { pm.expect(jsonData.c

基于Windows桌面上Postman GUI中给出的示例代码片段,我在Postman中编写了几个测试

主要是,我想检查响应中是否存在参数(确切地说,在那些我需要检查参数的特定值的情况下),我想知道是否有比我现在做的更好的方法

下面的测试显示了一个这样的示例,这只是其中的一小部分。实际的响应模式要大得多,所以我设想为每个API端点编写50-60行这样的检查

pm.test("Det details of a POI", function () {
    pm.expect(jsonData.code).to.eql(0);
    pm.expect(jsonData.data[0].provider).to.eql("google");
    pm.expect(jsonData.data[0]).to.have.property("id");
    pm.expect(jsonData.data[0].location).to.have.property("position");
    pm.expect(jsonData.data[0].location.address).to.have.property("text");
    pm.expect(jsonData.data[0].location.address).to.have.property("house");
    pm.expect(jsonData.data[0].location.address).to.have.property("street");
    pm.expect(jsonData.data[0].location.address).to.have.property("postalCode");
    pm.expect(jsonData.data[0].location.address).to.have.property("city");
    pm.expect(jsonData.data[0].location.address).to.have.property("county");
    pm.expect(jsonData.data[0].location.address).to.have.property("state");
    pm.expect(jsonData.data[0].location.address.country).to.eql("United Kingdom");
    pm.expect(jsonData.data[0].location.address).to.have.property("countryCode");
    pm.expect(jsonData.data[0].contacts).to.have.property("phone");
    pm.expect(jsonData.data[0].contacts.website.value).to.include("www.google.com");
    pm.expect(jsonData.data[0].contacts.website).to.have.property("label");
    pm.expect(jsonData.data[0].categories[0]).to.have.property("id");
    pm.expect(jsonData.data[0].categories[0]).to.have.property("title");
    pm.expect(jsonData.data[0].categories[0]).to.have.property("type");
    pm.expect(jsonData.data[0].categories[0]).to.have.property("system");
)};

任何提示和改进都将不胜感激。

您的要求基本上与以下两篇堆栈溢出帖子相同:


答:Postman中内置了一个json格式验证,它使用该项目允许在请求后测试脚本中进行模式验证。研究Postman的文档(,)以获取如何使用它的示例。

您的问题基本上与这两篇堆栈溢出文章相同:


答:Postman中内置了一个json格式验证,它使用该项目允许在请求后测试脚本中进行模式验证。研究邮递员文档(,)以获取如何使用它的示例。

您可能希望在本机邮递员应用程序内置时查看它-您可能希望在本机邮递员应用程序内置时查看它-