我有一个方法。从硬盘检索文档。我无法通过单元测试来测试这一点。它总是抛出异常无效的空路径或其他东西。如何测试呢。我已经临时创建了单元测试会话。但我不能使用这个 Server.MapPath。怎么做 ?
您可以通过 Server.MapPath 使用依赖项注入和抽象
public interface IPathProvider
{
string MapPath(string path);
}
生产实施将是:
public class ServerPathProvider : IPathProvider
{
public string MapPath(string path)
{
return HttpContext.Current.Server.MapPath(path);
}
}
在测试之一时:
public class TestPathProvider : IPathProvider
{
public string MapPath(string path)
{
return Path.Combine(@"C:\project\",path);
}
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)