SOAPUI及Xpath的:断言一个简单的节点
我目前使用了SoapUI免费版3.2 Beta 2中 我有一个奇怪的问题与Xpath的断言:SOAPUI及Xpath的:断言一个简单的节点
我有这样的回应:
(...) 而且我用这个XPath断言, “niveau” 使用id = '2' 是在响应:
Xpath表达式;
//*:niveau[@id='2']
和预期的结果是:
<mod0911:niveau id="2" libelle="Immatriculation" ordre="0" taille="0"/>
但我有此错误消息: XPathContains比较失败,希望[],实际是[空]
但如果我试试这个:
exists(//*:niveau[@id='2'])
而预期的结果是:真 它的作品!!?
但是这种语法很难看懂&维护&我想使用第一种语法(我试图忽略命名空间,添加它们...仍然不起作用)。
任何想法?
问候
你声明实际上是对在响应中的XML运行中的XPath。然后将其与“预期结果”中的文字进行比较。
我不是100%确定你要做什么。鉴于这种回应:
<root>
<a>
<b id="2" />
</a>
<c>
</c>
</root>
如果你把这个在“声明”://b[@id=2]
,它将运行对XML了XPath。该XPath(未经测试)应该只选择<b>
元素。
然后您的“预期结果”应该是:<b id="2" />
。
给pro版本试用一个旋转,你会发现它内置了一个很好的xpath专家。通过示例请求,您可以选择要查找的值,并生成xpath并显示值。很酷。将xpath复制/粘贴到免费版本中,然后全部设置好。或者,如果你和我一样,更加努力让你的老板为你购买专业版。
您可以使用FirstObject XML Editor工具来生成Xpath.It将自动生成XPath供您选择,就像您在soapUI Pro中所做的那样,然后您可以在您的soapui免费版本中使用该Xpath。
您应该包含XML标签不仅是节点的值。
如果您将期望值从[]更改为<nodeName id=2 />
,它应该可以工作。