Visual studio 用于单元测试的单独visual studio解决方案?
我有一个VisualStudio解决方案,包含大约18个项目。我想为这些项目编写单元测试(通过创建一个包含针对每个源项目的单元测试的测试项目)Visual studio 用于单元测试的单独visual studio解决方案?,visual-studio,unit-testing,Visual Studio,Unit Testing,我有一个VisualStudio解决方案,包含大约18个项目。我想为这些项目编写单元测试(通过创建一个包含针对每个源项目的单元测试的测试项目) 我应该使用包含所有测试项目的单独解决方案吗?或者我应该使用Visual Studio 2008的分区解决方案方法并为所有测试项目创建子解决方案吗?将单元测试放在一个单独的解决方案中似乎会产生问题。从本质上讲,单元测试必须能够引用它们正在测试的类型(类)。如果在一个单独的解决方案中,那么它意味着一个二进制关联。这看起来很“困难” 因此,为了调查问题的原因,
我应该使用包含所有测试项目的单独解决方案吗?或者我应该使用Visual Studio 2008的分区解决方案方法并为所有测试项目创建子解决方案吗?将单元测试放在一个单独的解决方案中似乎会产生问题。从本质上讲,单元测试必须能够引用它们正在测试的类型(类)。如果在一个单独的解决方案中,那么它意味着一个二进制关联。这看起来很“困难” 因此,为了调查问题的原因,并希望提供一些帮助,我将把我的单元测试放在相同的解决方案中:
- 项目引用。我喜欢将单元测试项目命名为.tests,其中是包含被测试类型的生产程序集的名称。这样,它们在VS中就彼此相邻(按字母顺序)
- 随着TDD的开发,我需要在生产代码和单元测试之间快速切换。这是关于编写代码,而不是关于代码后测试
- 我可以选择解决方案窗格顶部的解决方案节点并说“运行所有测试”(我使用Resharper()
- 构建场(TeamCity)总是在所有提交上运行所有测试。在一个解决方案中使用所有测试更容易
希望这能有所帮助。事实上,我的解决方案中的项目规模很大,visual studio需要花费大量时间来加载完整的解决方案。更新intelli sense是另一个需要足够时间的问题。此外,我需要将代码与单元测试分开,这样当开发人员需要编写单元测试时,他/她只能工作在包含单元测试的解决方案上。所以我可以帮助你量化“非常大”。这里的多个答案取决于什么是“非常大”。