gpt4 book ai didi

asp.net - 调用 VirtualPathUtility.ToAbsolute 的单元测试代码

转载 作者:行者123 更新时间:2023-12-03 23:16:24 27 4
gpt4 key购买 nike

我正在尝试对调用 VirtualPathUtility.ToAbsolute 的一些代码进行单元测试.

VS 2008 提供的单元测试工具可以做到这一点吗?如果没有,是否可以使用更高版本的 Visual Studio?

最佳答案

我们已经过了 VS 2008,但对于仍在努力解决此问题的任何人,我已经在以下位置找到了解决方案:http://forums.asp.net/t/995143.aspx?Mocking+HTTPContext+object .

在您的测试初始化​​中使用以下代码来覆盖默认的 AppDomain 值。 (VirutalPathUtility 静态方法将使用您的新值。)

[TestInitialize]
public void Initialize()
{
// Fake out env for VirtualPathUtility.ToAbsolute(..)
string path = AppDomain.CurrentDomain.BaseDirectory;
const string virtualDir = "/";
AppDomain.CurrentDomain.SetData(".appDomain", "*");
AppDomain.CurrentDomain.SetData(".appPath", path);
AppDomain.CurrentDomain.SetData(".appVPath", virtualDir);
AppDomain.CurrentDomain.SetData(".hostingVirtualPath", virtualDir);
AppDomain.CurrentDomain.SetData(".hostingInstallDir", HttpRuntime.AspInstallDirectory);
TextWriter tw = new StringWriter();
HttpWorkerRequest wr = new SimpleWorkerRequest("default.aspx", "", tw);
HttpContext.Current = new HttpContext(wr);
}

关于asp.net - 调用 VirtualPathUtility.ToAbsolute 的单元测试代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/655134/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com