我有一个使用Kentico的DocumentHelper API的方法:
public static TreeNode GetDocument(string pageType, string aliasPath)
{
var document = DocumentHelper.GetDocuments().Types(pageType).Path(aliasPath, PathTypeEnum.Single).FirstOrDefault();
return document;
}
我想对此方法进行单元测试,但我不确定如何伪造DocumentHelper输出。有什么建议吗?
答案 0 :(得分:1)
您有几种选择:
围绕DocumentHelper
创建一个非静态包装器。除传递参数外,它不应包含任何逻辑。使包装器实现一个接口,然后创建实现该接口的模拟器。
如果您拥有Visual Studio的企业版,则可以利用"Microsoft Fakes (Unit Test Isolation)"并让它为您生成假装配。
使用delegates创建包装器。 (与第一种方法相比没有真正的优势。)