1

情况是我得到了以下 JSON 响应,例如:

[
    {
        "a": "a",
        "b": "a",
        "c": "a",
    }
    {
        "a": "ab",
        "b": "ab",
        "c": "ab",
    }

]

现在我想检查响应是否在“b”节点中包含“ab”。在空手道中,我不知道该怎么做。

给定路径 'url' 当方法获取然后状态 200 并且匹配响应 == ??

4

1 回答 1

2

我建议你仔细阅读文档,空手道在这方面有很大的灵活性。下面是一些示例,您可以将它们粘贴到您的*.feature文件中,然后查看这些示例:

* def response =
"""
[
    {
        "a": "a",
        "b": "a",
        "c": "a",
    },
    {
        "a": "ab",
        "b": "ab",
        "c": "ab",
    }
]
"""
* match response[1] contains { b: 'ab' }
* match response contains { a: 'ab', b: 'ab', c: 'ab' }
* match response contains { a: '#ignore', b: 'ab', c: '#notnull' }
* def expected = { b: 'ab' }
* match response contains '#(^expected)'
于 2017-09-27T13:27:03.437 回答