Unit testing 分支包含单元测试和源代码管理结构的解决方案?

Unit testing 分支包含单元测试和源代码管理结构的解决方案?,unit-testing,tfs,branch,Unit Testing,Tfs,Branch,以下是我在TFS 2010中的源代码管理结构示例: TFS Project Development Branches Source Tests 在我的源目录下,我为我的数据访问层创建了一个目录。该解决方案目前不依赖于其自身解决方案之外的任何其他项目。我这样做是为了能把代码分支。我希望避免必须分支整个源文件夹 我个人喜欢将单元测试作为解决方案的一部分,这样我就可以轻松地创建和运行针对代码的测试,而无需进入另一个解决方案 如果我

以下是我在TFS 2010中的源代码管理结构示例:

TFS Project
     Development
          Branches
          Source
          Tests
在我的源目录下,我为我的数据访问层创建了一个目录。该解决方案目前不依赖于其自身解决方案之外的任何其他项目。我这样做是为了能把代码分支。我希望避免必须分支整个源文件夹

我个人喜欢将单元测试作为解决方案的一部分,这样我就可以轻松地创建和运行针对代码的测试,而无需进入另一个解决方案


如果我将我的单元测试项目与我的DAL解决方案放在同一个解决方案中,那么在没有单元测试项目依赖项的情况下分支整个DAL的最佳方式是什么?我是否应该创建另一个没有分支单元测试的解决方案?在分支解决方案之后,是否应该在分支中包含单元测试

由于测试位于Tests文件夹中,因此无法在TFS中选择性地分支文件夹


其他用户是如何做到这一点的?

单元测试也有助于作为代码的文档,以及代码的行为和使用示例


因此,如果要分支以更改代码的行为,我建议将单元测试与代码一起分支。这样,您的文档和示例总是最新的。

在我的情况下,什么是分支的最佳方式。就像我说的,我不能选择性地分支文件夹,所以我会分支DAL文件夹并将单元测试添加回吗?如果您的单元测试是DAL上的测试,是的,请将它们复制回。完成后,您需要再次合并它们。只要确保它们确实是对DAL的测试,而不依赖于其他代码,合并就可以了。奇怪的是,为什么你无论如何都不想分支整个源文件夹,不过。。。DAL的行为不是由使用它的代码驱动的吗?DAL的行为对我的基础结构中的任何其他代码都是自主的。我使用业务层/服务层来说明如何使用它,但是,它不是“驱动的”通过BL或SL。我希望它保持独立,因此,如果基础设施确实需要更改,我只需要分支我的DAL。如果您分支所有代码,但只创建一个包含您希望在分支中处理的项目的解决方案文件,会怎么样?@WouterdeKort:我想过,但我有两个解决方案要管理。我想我总能找到一个分支解决方案。我唯一担心的是,我失去了在开发过程中作为解决方案的一部分创建/运行测试的好处。