Arrays SoapUI:计算JSON数组响应中返回的节点数
我在使用SoapUI方面学到了很多东西,但是,我只是停留在这一点上。我已返回以下有效负载:Arrays SoapUI:计算JSON数组响应中返回的节点数,arrays,json,count,nodes,soapui,Arrays,Json,Count,Nodes,Soapui,我在使用SoapUI方面学到了很多东西,但是,我只是停留在这一点上。我已返回以下有效负载: [ { "@c": ".CreditPaymentInfo", "supplementalInfo": null, "date": "06/30/2015 17:03:50", "posTxCode": "107535", "amt": 2.56, "transactionId": 235087, "id":
[
{
"@c": ".CreditPaymentInfo",
"supplementalInfo": null,
"date": "06/30/2015 17:03:50",
"posTxCode": "107535",
"amt": 2.56,
"transactionId": 235087,
"id": 232163,
"cardType": "CREDIT",
"cardHolderName": "SMITH2/JOE",
"expMonthYear": "0119",
"lastFourDigits": "4444",
"approvalCode": "315PNI",
"creditTransactionNumber": "A71A7DB6C2F4"
},
{
"@c": ".CreditPaymentInfo",
"supplementalInfo": null,
"date": "07/01/2015 15:53:29",
"posTxCode": "2097158",
"amt": 58.04,
"transactionId": 235099,
"id": 232176,
"cardType": "CREDIT",
"cardHolderName": "SMITH2/JOE",
"expMonthYear": "0119",
"lastFourDigits": "4444",
"approvalCode": "",
"creditTransactionNumber": null
}
]
我想计算返回的节点数。。。因此,在本例中,每当我在SoapUI中运行此测试步骤时,我希望返回2个节点
我试图使用JsonPath Count断言来完成这项工作,但是,我无法正确设置格式
任何帮助都将不胜感激 我没有使用JsonPath,但是您可以使用XPath来实现这一点。。。这也适用于所有旧版本 在内部,SoapUI将所有内容表示为XML。因此,您可以使用XPath断言检查:
${#ResponseAsXml#count(//*:id)}
并确保它回来时
2
这是一种JSON格式。只需使用JsonPath计数。顶部使用$,底部使用2
$[index].your.path.here
因此
及
使用“JsonPath count”使用以下方法之一成功计数(假设我的顶级对象是数组): 如果需要更具体地统计对象,则只能使用第三种语法,指定一个冗余字段。以下其中一项对我有效:
$[*].fieldName
$[*].['fieldName']
在您的情况下,应返回2,并带有以下内容之一:
$[*].@c
$[*].['@c']
$[*].id
$[*].['id']
诸如此类您是想直接从SOAP UI获取这些信息,还是可以随意使用任何方法?我不介意它是groovy脚本还是类似的东西。我只想让我的QA团队的未来成员在一个工具内完成所有测试。我甚至没想过要那样做!非常感谢!:)
$
$.
$[*]
$[*].fieldName
$[*].['fieldName']
$[*].@c
$[*].['@c']
$[*].id
$[*].['id']