如何在空手道框架中断言子字符串

How to assert substring in karate framework

我收到一个 URL 数组作为响应。我想检查数组中的每个 URL 是否包含一个特定的单词。 我如何在空手道框架中检查这个? 我的回复是:

response {
  "docs":[{
         "url":"http://url/1.com"
         "title": "some title"
         },{
         "url":"http://url/2.com"
         "title":"ABC"
        }]
  }

}

现在我想检查每个 url 字段值是否包含单词 'url'。我该如何检查,因为 match each $.response.docs.url contains 'url' 对我不起作用。

请参考match each语法。这是一个例子:

* def response = [ 'http://url-one.com', 'http://url-two.com', ]
* match each response contains 'url'

编辑 - 编辑问题后。这是您的工作示例:

* def response =
"""
{
   "docs":[
      {
         "url":"http://url/1.com",
         "title":"some title"
      },
      {
         "url":"http://url/2.com",
         "title":"ABC"
      }
   ]
}
"""
* def urls = $response.docs[*].url
* match each urls contains '/url/'