首页 > 解决方案 > Postman - 断言 JSON 响应中有重复部分的位置

问题描述

这是我的 JSON 响应。我想编写一个断言成本 = 1.000 的测试,其中提供者 = Apple。由于成本在响应中重复,我很挣扎。我该怎么办?谢谢。

[
    {
        "provider": "Apple",
        "cost": 1.000,
        "active": true,
        "total": false
    },
    {
        "provider": "Banana",
        "cost": 0.000,
        "active": true,
        "total": false
    },
    {
        "provider": "Grape",
        "cost": 0.000,
        "active": true,
        "total": false
    }
]

标签: jsonapipostman

解决方案


您可以编写一个循环遍历响应中每个对象的测试,检查cost对象是否在键中包含 Apple 值provider

let jsonData = pm.response.json()
pm.test('Check the price of the Apple', () => {
    _.each(jsonData, (item) => {
        if(item.provider === 'Apple') {
            pm.expect(item.cost).to.equal(1.000)
        } 
    })
})

推荐阅读