在XMLUnit 2.x中,我可以忽略实际(“控制”)XML中我的测试(“预期”)XML中不存在的所有元素吗?
示例:
实际值:
<a>123</a>
<b>456</b>
<c>789</c>
测试:
<b>456</b>
<c>xxx</c>
我希望检测<c>
中的差异,但完全忽略<a>
标记,因为它不存在于测试XML中。
我的想法是我想要比较一个大的XML,但只有一小部分元素对我来说很有趣,而且我不想给XMLUnit一个仍然很大的元素名列表来忽略或不忽略。
答案 0 :(得分:1)
您可以在所有DifferenceEvaluator
和ComparisonResult.SIMILAR
比较中使用自己的EQUAL
并返回CHILD_NODELIST_LENGTH
(甚至CHILD_LOOKUP
)。
如果您只想忽略测试文档中添加的元素(而不是忽略另一侧不存在的所有元素,而不考虑方向),那么只有在控制长度大于测试时才应降级CHILD_NODELIST_LENGTH
测试端缺少节点的长度和CHILD_LOOKUP
。