空手道 - 无法执行匹配操作 - 实际值不是字符串
Karate - unable to perform match operation - actual value not string
Scenario Outline: Verify retreiving endpoint for particular system
Given path 'kites/<id>'
When method get
Then status 200
And match response contains "<orgid>"
Examples:
| kites | orgid |
| 56338e32e4b0846c32c0732e | 56338e32e4b0846c32c0732e |
我收到以下错误:
com.intuit.karate.exception.KarateException: path: $, actual:
{
"orgId": "56338e32e4b0846c32c0732e",
"name": "Supplier Management"
}
expected: '56338e32e4b0846c32c0732e', reason: actual value is not a string
我尝试使用 <orgid>
和 "<orgid>"
,但我遇到了同样的错误。
任何帮助将不胜感激。
你的例子中有很多地方我不明白。 <id>
从哪里来? kites
列在哪里使用?
最严重的问题是您正在使用 orgid
但实际 JSON 有一个密钥 orgId
。请不要犯基本错误并重试。
你不应该尝试做这样的事情吗:
And match response contains { orgId: "<orgid>" }
编辑:由于对上述内容有抱怨(我觉得很失望),我添加了另一个选项:
And match response.orgId == "<orgid>"
Scenario Outline: Verify retreiving endpoint for particular system
Given path 'kites/<id>'
When method get
Then status 200
And match response contains "<orgid>"
Examples:
| kites | orgid |
| 56338e32e4b0846c32c0732e | 56338e32e4b0846c32c0732e |
我收到以下错误:
com.intuit.karate.exception.KarateException: path: $, actual:
{
"orgId": "56338e32e4b0846c32c0732e",
"name": "Supplier Management"
}
expected: '56338e32e4b0846c32c0732e', reason: actual value is not a string
我尝试使用 <orgid>
和 "<orgid>"
,但我遇到了同样的错误。
任何帮助将不胜感激。
你的例子中有很多地方我不明白。 <id>
从哪里来? kites
列在哪里使用?
最严重的问题是您正在使用 orgid
但实际 JSON 有一个密钥 orgId
。请不要犯基本错误并重试。
你不应该尝试做这样的事情吗:
And match response contains { orgId: "<orgid>" }
编辑:由于对上述内容有抱怨(我觉得很失望),我添加了另一个选项:
And match response.orgId == "<orgid>"