我想比较两个具有相同限定名称的空元素。我希望能够指定一个选项,如果一个是自动关闭而另一个不是,则将元素标记为不同。
final String control = "<a></a>";
final String test = "<a/>";
Diff myDiff = DiffBuilder.compare(Input.fromString(control))
.withTest(Input.fromString(test))
.build();
System.out.println(myDiff.toString());
目前正在打印
[identical]
我怎样才能让它包含差异?
我已经探索了ComparisonType
枚举,但它似乎没有包含任何与我所寻求的比较类型相匹配的值。
我正在使用Java 8和XMLUnit for Java 2.5.0。
上下文:我想这样做的原因是因为我有一个将XML转换为HTML的XSLT转换,我正在编写一个单元测试,确保输出不包含自动关闭<div/>
或{{ 1}} s,因为这不是有效的HTML。
答案 0 :(得分:2)
你不可能,原因很简单:这两个要素并不相同。只有它们的序列化形式是不同的,XMLUnit关注的是XML是否正确,而不是它是否按照你想要的方式序列化。