【发布时间】:2015-05-21 15:49:13
【问题描述】:
我有以下TestMethod 我正在使用 VS 2013 进行测试,并且我正在使用 Microsoft Fakes。
[TestMethod]
public void ConstructorTestForCMAClass()
{
XmlDocument doc = new XmlDocument();
doc.LoadXml("<add name=\"console\" type=\"System.Diagnostics.DefaultTraceCMA\" value=\"Error\"/>");
XmlAttributeCollection attrColl = doc.DocumentElement.Attributes;
CMATracer cMATracer = new CMATracer(attrColl);
}
对于上述TestMethod,如果我必须使用存根,应该如何修改它,使用存根代替XMLDocument会是一个好习惯吗?
我已经尝试过了,但不确定这是否足够。
StubXmlDocument stubXmlDocument = new StubXmlDocument();
stubXmlDocument.LoadXml("<add name=\"console\" type=\"System.Diagnostics.DefaultTraceCMA\" value=\"Error\"/>");
//create a stub attribute collection
XmlAttributeCollection attrCollection = stubXmlDocument.DocumentElement.Attributes;
CMATracer cMATracer = new CMATracer(attrColl);
【问题讨论】:
-
您的测试类(CMATracer)似乎使用了 XmlAttributeCollection,所以您被嘲笑错了。请添加 CMATracer 的 C'tor 实现。
标签: c# unit-testing mstest microsoft-fakes