我有一个本地test
XML数据,如下所示
testLocalXML
<root>
<elementA>something different</elementA>
<elementB>something else</elementB>
<elementC>yet another thing</elementC>
</root>
但我从服务器获得的数据可能很大,并且会不断动态增加,例如
服务器响应
<root>
<elementA>something different</elementA>
<elementB>something else</elementB>
<elementC>yet another thing</elementC>
<elementD>next data</elementD>
<elementE>another data</elementE>
<elementF>F data</elementF>
.
.
... so on...
</root>
我不知道使用下面的逻辑可以忽略哪个node
。我的节点是动态的。
.withNodeFilter(node -> !(node.getNodeName().equals("elementD") ||
node.getNodeName().equals("elementE"))
在这里,由于服务器响应是动态的并且不断增加,我如何使用XMLUnit
验证testLocalXML中提到的任何数据?
嗯,我确实知道我感兴趣的元素,所以我可以很容易地进行
final Collection<String> expected = Arrays.asList("root", "elementA", elementB", "elementC");
并且可以添加过滤器作为
.withNodeFilter(n -> expected.contains(n.getNodeName()))