当前位置: 首页 > 知识库问答 >
问题:

忽略那些使用xmlunit在一个xml文件中注释掉的元素

上官彬
2023-03-14
<Detail>
    <Participant>
        <PersonalInfo>
        <SSN>405018111</SSN>
        <!--<Title>MR</Title>-->
    </PersonalInfo>
    <!--<PersonalDemo>
        <Email>someemail@email.com</Email>
        <EDeliveryFlag>true</EDeliveryFlag>
    </PersonalDemo>-->
</Detail>
<Detail>
    <Participant>
        <PersonalInfo>
        <SSN>405018111</SSN>
        <Title>MR</Title>
    </PersonalInfo>
    <PersonalDemo>
        <Email>someemail@email.com</Email>
        <EDeliveryFlag>false</EDeliveryFlag>
    </PersonalDemo>
</Detail>
    null

请帮忙

共有1个答案

仇正豪
2023-03-14

我建议您必须编写自己的XML解析器,以便它能够看到要忽略的标记。在此任务中,只需从预期的和实际的XML中删除被忽略的标记,并匹配其他标记以进行验证或比较。

我认为这里有两个选择,要么在两个解析器之间使用其中一个:

DOM parser
SAX PArser

我知道这不是最好的解决办法,所以也欢迎其他想法...

 类似资料:
  • 现在,如果我使用以下代码进行比较,我将在XMLUnit的帮助下相互比较两个xml文件 现在它给出了:预期的属性值'02',但是'01',但我不希望有差异,我希望表id是唯一的,如果在另一个文件中看到相同的表id,则只检查本例中的Main-Element:table->包含什么。

  • 我需要比较使用自定义差异侦听器忽略子节点序列和属性列表序列的2个XML: 我的代码适用于: 我找到了一个临时的解决方案(8小时内不能在我自己的问题上添加评论): 我之前用:ElementNameAndAttributeQualifier重写了ElementQualifier,如果我将其更改为RecursiveElementNameAndTextQualifier,我可以得到我想要的结果 还可以使用

  • 项目中经常会生成一些Git系统不需要追踪(track)的文件。典型的是在编译生成过程中 产生的文件或是编程器生成的临时备份文件。当然,你不追踪(track)这些文件,可以 平时不用"git add"去把它们加到索引中。 但是这样会很快变成一件烦人的事,你发现 项目中到处有未追踪(untracked)的文件; 这样也使"git add ." 和"git commit -a" 变得实际上没有用处,同时

  • 问题内容: 我的xml文件如下: 我想忽略,我想在我的Unmarshaller流程中添加标签。 我的班级如下: 谢谢。 问题答案: 忽略 您可以创建一个经过过滤的StAX,并让JAXB取消编组以忽略一个或多个XML元素。 http://docs.oracle.com/javase/7/docs/api/javax/xml/stream/XMLInputFactory.html#createFilt

  • 我想知道是否可以使用此方法忽略字段,因为我有一个要忽略的字段列表,在同一个类中,那么我该如何做呢? 我正在使用 谢谢

  • 问题内容: 我有两个XML文件: 在比较这两个文件时,我不得不忽略Node 的属性:。 我正在使用: 大多数在线解决方案建议实施: 也尝试过该操作,但这会忽略所有具有属性ID的节点,而我想忽略特定节点的属性: 我的Test类中的调用方法: 有人可以建议我一种使用XMLUnit 2.x的新方法来实现此目标,请相应地提供帮助。 提前致谢。 问题答案: 如果您确实愿意,可以使用一个。您只需要做的就是测试