soapui:如何在xpath匹配断言中使用属性

soapui:如何在xpath匹配断言中使用属性,xpath,xquery,soapui,Xpath,Xquery,Soapui,我正在测试为用户添加事件的WS。添加的最后一个事件的userEventId增加了,所以我事先不知道它的值。为了恢复它,我使用了财产转移 现在,我想使用xquery匹配断言来测试我的值。但我不知道如何在等式表达式中使用我的属性 这符合: //events[last()]/userEventId = <userEventId>12</userEventId> 返回: <xml-fragment>true</xml-fragment> <xml

我正在测试为用户添加事件的WS。添加的最后一个事件的userEventId增加了,所以我事先不知道它的值。为了恢复它,我使用了财产转移

现在,我想使用xquery匹配断言来测试我的值。但我不知道如何在等式表达式中使用我的属性

这符合:

//events[last()]/userEventId = <userEventId>12</userEventId>
返回:

<xml-fragment>true</xml-fragment>
<xml-fragment>false</xml-fragment>
但这并不是:

//events[last()]/userEventId = <userEventId>${UserEventId}</userEventId>
返回:

<xml-fragment>true</xml-fragment>
<xml-fragment>false</xml-fragment>

有什么解决办法吗?

我想你需要的是:

//events[last()]/userEventId = <userEventId>${#TestCase#UserEventId}</userEventId>

${UserEventId}本身不会扩展到SoapUI中的任何内容。

使用XPath匹配断言工作:

matches(//events[last()]/userEventId, '${#subscribe_one_event_TestCase#user_event_id}')

返回true。

Constains断言与${UserEventId}匹配,因此我的属性定义良好。它仅在文档中的最后一个对象中匹配。它是最后一个:创建的最后一个UserEventId为12,当前${UserEventId}=12。我尝试使用此:,得到类似于://events[last]/UserEventId=${subscribe\u one\u event\u TestCaseuser\u event\u id}。仍然不匹配…您能解释一下步骤和语法吗?文档的相关部分在这里:假阳性结果