【问题标题】:Validating order of XML elements using XMLUnit使用 XMLUnit 验证 XML 元素的顺序
【发布时间】:2012-04-05 16:53:27
【问题描述】:

我需要使用 XMLUnit 框架针对 XSD 验证输出 xml 的顺序。我是 XMLUnit 的新手,不知道该怎么做。我知道 XMLUnit 比较两个 XML,但是如何比较 XML 和 XSD?

【问题讨论】:

    标签: java xml xml-validation xmlunit


    【解决方案1】:

    您可以使用 Java SE 5 及更高版本中可用的 javax.xml.validation API,而不是使用 XMLUnit:

    SchemaFactory sf = SchemaFactory.newInstance(XMLConstants.W3C_XML_SCHEMA_NS_URI);
    Schema schema = sf.newSchema(new File("customer.xsd"));
    
    Validator validator = schema.newValidator();
    validator.setErrorHandler(new MyErrorHandler());
    validator.validate(source);
    

    更多信息

    【讨论】:

    • 我想使用 XMLUnit 测试用例作为我的一段代码的单元测试用例,以便其他开发人员可以确保他们以正确的方式开发 XML。
    • @HimanshuYadav - 您仍然可以将 XMLUnit 用于所有其他测试用例。然后,您可以使用 Java SE API 添加额外的模式验证测试。
    • Dougham - 感谢您的快速回复。我将尝试使用 Java SE API。
    • Dougham 我收到 org.xml.sax.SAXParseException: cvc-elt.1: 找不到元素 'OLifE' 的声明,但 XSD 中已经存在元素
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-08-16
    • 1970-01-01
    • 2010-11-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多