我正在考虑将单元/集成测试项目放在何处。我按照1测试项目pr。项目惯例
我可以想到3种方式,这对我来说似乎都很好,这使得它很难选择: - )
您选择什么以及为什么?
答案 0 :(得分:4)
选项2是我的首选。除此之外,它只是创建新类库项目时的默认设置 - 它与生产项目位于同一个解决方案目录下。
为了解决关于在没有测试的情况下签出项目的争论,我发现仅仅检查项目而不是整个解决方案是相对罕见的。如果你是一个更“基于项目”而不是“基于解决方案”的商店,那可能会改变一切。
答案 1 :(得分:3)
我喜欢将所有项目都放在同一级别。我只是为了简单而没有大的争论。毕竟视觉工作室显示了同一级别的所有项目。
.../Project/Project.Web/ .../Project/Project.Model/ .../Project/Project.DataAccess/ .../Project/Project.UnitTest/ etc
答案 2 :(得分:2)
测试项目放在旁边 项目测试,在“项目”。测试 夹。我相信这就是罗伊 Osherove建议。
这是我个人的最爱。它是最清楚地传达意图的那个,并且如果你在一个目录中查看它们,或者有一些理由将项目分组到一个解决方案中,也可以很容易地看到哪些测试项目与哪个项目有关。
答案 3 :(得分:1)
我选择#1,这样当您结账时,您也可以进行测试。否则,测试甚至会成为事后的想法。
答案 4 :(得分:0)
Visual Studio 2010 Asp.Net MVC解决方案中的默认设置是同一解决方案中的另一个项目。在使用所有引用测试编译时,这是一个很大的帮助。
答案 5 :(得分:0)
我相信选项2是最佳选择。测试是记录代码的好方法。他们明确了方法和类的语义。程序员应该很容易跳到测试代码中找到他认为可疑的某种方法。
另一方面,将测试代码保存在同一个项目中可能会使编译的二进制输出更大,并迫使项目只有测试代码所需的依赖项。