1

对于单元测试 XmlDocument,我有点担心我编写测试用例的方式。

为了断言 XmlDocument,我手动创建了 XmlElements。有时要测试的 XmlDocument 很大,所以我需要编写大量代码来构建预期的 xmldocument。工作量巨大。

XmlDocument 单元测试有没有更好的实现?

4

3 回答 3

1

XMLUnit会为您执行此操作,通常它很简单(在 javish 中,c# 应该类似):

XMLUnit.compareXML( expectedXML, codeReturnsXML );
于 2009-09-24T09:54:55.297 回答
1

为什么不创建一个 XML 模式并针对它进行验证呢?

于 2009-09-24T23:22:42.283 回答
0

有时测试 XML 可能非常具有挑战性。Steen 已经提到过 XMLUnit。我从未真正使用过 XMLUnit,但在某些时候 MbUnit 团队正计划添加类似的功能。

看起来此时 MbUnit / Gallio 团队还没有实现它。但是,MbUnit 框架的一部分是Assert.XmlDeserializeAssert.XmlSerialize方法。

你可以像这样使用它:

Assert.AreEqual(Assert.XmlSerialize(xmlA), Assert.XmlSerialize(xmlB))

我还建议您阅读Stefan Bodewig 的Unit-Testing XML文章。

于 2009-09-24T10:06:06.460 回答