unit-testing - 在 VS2010 中使用 MStest 对 .NET 3.5 项目进行单元测试

标签 unit-testing visual-studio-2010 .net-3.5 mstest

Visual Studio 2010 中存在一个错误/功能,您无法使用 2.0 CLR 创建单元测试项目。

https://connect.microsoft.com/VisualStudio/feedback/ViewFeedback.aspx?FeedbackID=483891&wa=wsignin1.0

当被测试的项目面向 2.0 CLR(在这种情况下是 .Net 3.5 SP1 之上的 ASP.NET MVC 2)时,这会导致各种问题 - 在调试时崩溃,测试意外失败,在一种情况下测试项目没有甚至因为依赖 System.Web 2.0.0.0 而构建,这在面向 4.0 的项目中不可用。

无法将测试项目更改为面向 3.5 框架。

有谁知道解决方法?

我知道但想避免的解决方法包括:-

1) 将整个解决方案升级到面向 .NET 4
我想在 Azure 上托管,目前尚不清楚是否/何时会添加对 .NET 4.0 的支持。见 .NET 4.0 on Windows Azure?

2) 将整个项目回滚到 Visual Studio 2008
这是最后的手段,因为 2010 年有许多功能我真的很想使用

3) 在 2008 年构建单元测试并手动管理引用
这会奏效,但会带来巨大的痛苦。

有任何想法吗?

最佳答案

您没有建议更改为不同的测试框架。我个人使用 NUnit并有多年。它比 2008 年的东西复杂得多。我没有时间看到 2010 年发生了什么变化,但我看不到 MS 能这么快地 catch 来。

关于unit-testing - 在 VS2010 中使用 MStest 对 .NET 3.5 项目进行单元测试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1679404/

相关文章:

c# - Process.Responding 的真正含义是什么?

typescript - 在对 LitElement 组件进行单元测试时如何正确 stub 元素?

c++ - BOOST_CHECK_NO_THROW 如何打印异常信息

c# - 使用自动映射器忽略未使用的属性

c# - 使用Emgu CV访问和输出每个像素的灰度

c# - 修复 - System.Net.WebException : The remote server returned an error: (500) Syntax error, 命令无法识别

c# - protobuf 和 List<object> - 如何序列化/反序列化?

java - 测试。我真的需要添加 "throws Exception"吗?

unit-testing - Coffeescript + 单元测试 : Global Variables?

visual-studio-2010 - 需要来自非域计算机的域帐户的测试代码