2

我有一个明确而简单的问题。我正在开发的 web 应用程序正在使用单元测试(接近 1500 个测试)。由于对应用程序进行了必要的修改,一些测试失败了,因为 HttpRuntime.BinDirectory 没有值,因此会抛出 ArgumentNullException。

有没有办法在 HttpRuntime.BinDirectory 中设置我自己的值?或者使用 Moq 框架来模拟它?

任何帮助表示赞赏!

4

1 回答 1

4

假设您自己的代码正在调用HttpRuntime.BinDirectory,那么就不要那样做。创建您自己的类,例如ExecutionContext使用一个属性,该属性BinDirectory可以根据它是从 asp.net 调用还是在单元测试内部调用来推断正确的位置。

你也可以使用Assembly.CodeBase它来代替,只要你抓住你自己的一个程序集(不是 gac 中的东西),它就可以在这两种情况下工作。

于 2010-10-22T13:06:41.600 回答