【发布时间】:2010-06-20 14:14:39
【问题描述】:
我在 VS 2010 中创建了一个针对 .NET 4.0 的控制台应用程序。根据Microsoft (Rick Byers) AnyCPU 不再是控制台应用程序的默认设置,因为按照微软的方式,他们觉得默认使用 x86 是一个更好的主意。此外,将平台更改为 AnyCPU 或 x64 的选项似乎不可用。
现在,我正在构建这个控制台应用程序,并且我有一个类库项目,我在其中使用 NUnit 编写单元测试(我练习 TDD)。所以,问题是当我去实现代码以使我的测试通过时,它们仍然失败。过了一会儿,我发现这是因为(即使我从解决方案级别执行此操作)当项目重建时,它并没有重建控制台应用程序项目。这会导致引用在我的单元测试中没有得到更新,这当然意味着我的测试是针对旧代码而不是新实现的代码执行的。大问题。
目前,我必须右键单击控制台应用程序并选择重建,然后在运行测试之前右键单击测试项目并选择重建每次。这非常烦人。
那么,回到这个问题,我怎样才能让 VS2010 重建我的控制台应用程序并像在旧版本的 Visual Studio 中那样自动更新我的类库中的引用?
请不要回答“添加构建事件来执行此操作”。我非常感谢 Visual Studio 能够正常工作,因为我不想记住每次创建新控制台应用程序时都需要“添加构建事件来完成它”。
注意: 到目前为止,我已经尝试了以下解决方法:
这不适用于我的单元测试项目。所以我尝试删除引用并从 Visual Studio 重新添加它,我得到一个对话框,上面写着“无法添加引用”。所以我将其恢复为 Visual Studio 默认模板。
更新: 我将此记录为 Microsoft Connect here. 的错误
【问题讨论】:
-
@Restuta 是 - 已经在解决方案属性中设置了构建依赖项。我只是注意到解决方案属性中没有选中“构建”复选框(奇怪的是你会认为它默认为选中)。检查它似乎是解决方案。
标签: .net unit-testing visual-studio-2010