Arrays SoapUI:计算JSON数组响应中返回的节点数

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":

我在使用SoapUI方面学到了很多东西,但是,我只是停留在这一点上。我已返回以下有效负载:

[
      {
      "@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']