我想比较两个XML文件。我正在使用XMLUnit进行比较。我在比较下面的xml片段时遇到了一些问题。
预期:
<Detail>
<Participant>
<PersonalInfo>
<SSN>405018111</SSN>
<!--<Title>MR</Title>-->
</PersonalInfo>
<!--<PersonalDemo>
<Email>someemail@email.com</Email>
<EDeliveryFlag>true</EDeliveryFlag>
</PersonalDemo>-->
</Detail>
ACTUAL:
<Detail>
<Participant>
<PersonalInfo>
<SSN>405018111</SSN>
<Title>MR</Title>
</PersonalInfo>
<PersonalDemo>
<Email>someemail@email.com</Email>
<EDeliveryFlag>false</EDeliveryFlag>
</PersonalDemo>
</Detail>
我真正需要的是我想忽略那些在EXPECTED中注释掉的ACTUAL中的元素
任何帮助,请
答案 0 :(得分:0)
我建议您必须编写自己的XML解析器,以便能够看到要忽略的标记。在此任务中,您只需从预期和实际XML中删除忽略的标记,并匹配其他标记以进行验证或比较。
我认为你有两个选择,要么在两个解析器之间使用其中一个:
DOM parser
SAX PArser
我知道这不是最好的解决方案,所以也欢迎其他想法......
修改强>
我相信您需要在XMLUint
上编写包装器。在删除被忽略的标签(Wrapper
任务)后将采用XML输入,其余功能相同。