这个问题很接近,但仍然不是我想要的.我想以通用的方式断言两个bean对象是等价的.如果它们不是,我想要一个详细的错误消息来解释差异而不是布尔"等于"或"不等于".
使用XMLUnit 2,如何在不考虑元素顺序的情况下比较两个文档?
我为XMLUnit 1得到了这个问题,但显然v2中的新API不再具有上述方法了.
这是我目前的代码:
Diff diff = DiffBuilder.compare(expected)
.withTest(actual)
.ignoreComments()
.ignoreWhitespace()
.checkForSimilar()
.build();
assertFalse(diff.hasDifferences());
Run Code Online (Sandbox Code Playgroud)
编辑Stefan Bodewigs评论:
这些是我与上面的片段比较的两个字符串:
String expected = "<root><foo>FOO</foo><bar>BAR</bar></root>";
String actual = "<root><bar>BAR</bar><foo>FOO</foo></root>";
Run Code Online (Sandbox Code Playgroud)
报道的差异
Expected element tag name 'foo' but was 'bar' - comparing <foo...> at /root[1]/foo[1] to <bar...> at /root[1]/bar[1] (DIFFERENT)
Expected text value 'FOO' but was 'BAR' - comparing <foo ...>FOO</foo> at /root[1]/foo[1]/text()[1] to <bar ...>BAR</bar> at /root[1]/bar[1]/text()[1] (DIFFERENT)
Expected element tag name 'bar' but was 'foo' - comparing <bar...> at …Run Code Online (Sandbox Code Playgroud) 有没有办法在Delphi中比较两个xml节点?
我正在使用MSXML解析器并将xml加载到IXmlDOMDocument2中.节点存储在IXmlDOMNode中.
如果有帮助的话,我可以使用Delphi的TXMLDocument.我不想下载任何第三方组件.
我只是想比较节点的结构,而不是值.
我看到了一个类似于Java的帖子/实用程序,但对于Delphi没什么.
谢谢!
xml ×2
assert ×1
delphi ×1
diff ×1
equality ×1
ixmldomnode ×1
java ×1
javabeans ×1
txmldocument ×1
unit-testing ×1
xmlunit ×1
xmlunit-2 ×1