SOAPUI上的XQuery Match断言

时间:2014-06-05 09:50:32

标签: xquery soapui

我在SOAPUI中有一个带有XQuery匹配的soap testStep。

XML(简化)外观如下:

<root>
    <element>
        <a>a</a>
        <b>b</b>
        <c>c</c>
        <d>d</d>
    </element>
</root>

我想创建一个XQuery来从<element>获取所有子节点,根据节点名称删除子元素。我的XQuery看起来像:

for $x in //root/element/element()
return 
if (name($x) != 'a') then $x
else ""

我期待下一个结果:

<b>b</b>
<c>c</c>
<d>d</d>

我认为我的XQuery是正确的,我使用XQuery在线评估器测试并且看起来没问题,您可以尝试使用跟随link

但是,当我在SOAPUI中的XQuery Match断言中使用此表达式时,我收到以下消息:More than one match in current response。如何用SOAPUI实现这个目标?

谢谢,

1 个答案:

答案 0 :(得分:1)

最后做了一些尝试我找到了解决方案,在SOAPUI中执行此XQuery的方法是在XQuery表达式中指定根节点,即:

<MyResult>
{
for $x in //root/element/element()
return 
if (name($x) != 'a') then $x
else ""
}
</MyResult>