0

我专门在 .net mvc 环境中寻找解决方案,但是这个问题适用于所有语言和框架

我目前正在对 HtmlHelper 扩展进行单元测试(对于那些不熟悉 .net mvc 的人,这是一个返回 html 字符串的函数)

现在我的问题是,即使字符串不相等,html 也可能有效

假设我想断言我的方法输出

<div class="myClass" id="myId" >Hello</div>

但是它实际上输出

<div id="myId" class="myClass" >Hello</div>

这仍然有效,对吧?
现在我可能正在吃我的话,但我还没有看到任何可以说这些实际上是平等的。

我相信这些是平等的,因为在浏览器中渲染时它们基本上是相同的。

是否有支持这种比较的库?(特别是 c# .net;不过我也对其他语言感兴趣)

4

1 回答 1

2

我不确定,但 HtmlAgilityPack ( http://htmlagilitypack.codeplex.com/ ) 可以帮助您解决这个问题。它可以将 html 解析为代表 html 的 dom 的对象。在你的情况下,我猜 dom 应该是相同的,或者至少比较两个解析结果应该更容易,然后是 html。

于 2013-10-25T08:24:37.033 回答