相关疑难解决方法(0)

比较两个忽略元素顺序的XML字符串

支持我有两个xml字符串

<test>
  <elem>a</elem>
  <elem>b</elem>
</test>

<test>
  <elem>b</elem>
  <elem>a</elem>
</test>
Run Code Online (Sandbox Code Playgroud)

如何编写一个比较这两个字符串并忽略元素顺序的测试?

我希望测试尽可能短,没有10行XML解析等的地方.我正在寻找一个简单的断言或smt类似.

我有这个(不起作用)

   Diff diff = XMLUnit.compareXML(expectedString, actualString);   
   XMLAssert.assertXMLEqual("meh", diff, true);
Run Code Online (Sandbox Code Playgroud)

java junit unit-testing xmlunit

22
推荐指数
3
解决办法
3万
查看次数

用于Linux的开源命令行工具,用于区分忽略元素顺序的XML文件

是否有一个开源命令行工具(用于Linux)来区分忽略元素顺序的XML文件?

示例输入文件a.xml:

<tag name="AAA">
  <attr name="b" value="1"/>
  <attr name="c" value="2"/>
  <attr name="a" value="3"/>
</tag>

<tag name="BBB">
  <attr name="x" value="111"/>
  <attr name="z" value="222"/>
</tag>
<tag name="BBB">
  <attr name="x" value="333"/>
  <attr name="z" value="444"/>
</tag>
Run Code Online (Sandbox Code Playgroud)

b.xml:

<tag name="AAA">
  <attr name="a" value="3"/>
  <attr name="b" value="1"/>
  <attr name="c" value="2"/>
</tag>

<tag name="BBB">
  <attr name="z" value="444"/>
  <attr name="x" value="333"/>
</tag>
<tag name="BBB">
  <attr name="x" value="111"/>
  <attr name="z" value="222"/>
</tag>
Run Code Online (Sandbox Code Playgroud)

因此,比较这两个文件不应该输出任何差异.我试图先用XSLT对文件进行排序:

<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
  <xsl:output method="xml" encoding="WINDOWS-1252" omit-xml-declaration="no" indent="yes"/>
  <xsl:strip-space elements="*"/>

  <xsl:template match="node()|@*">
    <xsl:copy> …
Run Code Online (Sandbox Code Playgroud)

xml sorting diff command-line open-source

10
推荐指数
1
解决办法
4675
查看次数

XML Diff Tool,用于对2个XML进行无序比较

我正在寻找一个diff工具,它允许我比较2 xml(或json)文件忽略其元素的顺序.

例:

<Node>
    <Child name="Alpha"/>
    <Child name="Beta"/>
    <Child name="Charlie"/>
</Node>

<Node>
    <Child name="Beta"/>
    <Child name="Charlie"/>
    <Child name="Alpha2"/>
</Node>
Run Code Online (Sandbox Code Playgroud)

2节点元素应该被认为是相似的,唯一不同的是Node1具有子名"Alpha",在另一个节点中是"Alpha2".

StackOverflow有一个类似的问题,但8年前被问到,该解决方案不再有效.有更新的工具吗?

xml diff json

3
推荐指数
1
解决办法
1701
查看次数

标签 统计

diff ×2

xml ×2

command-line ×1

java ×1

json ×1

junit ×1

open-source ×1

sorting ×1

unit-testing ×1

xmlunit ×1