在编写单元测试时,您是将测试放置在要测试的程序集内还是单独的测试程序集中?我通常会将测试写在一个单独的程序集里,方便部署,因为我可以直接排除这个程序集。是否有人将测试写在要测试的程序集中?如果是,那么为什么?
在编写单元测试时,您是将测试放置在要测试的程序集内还是单独的测试程序集中?我通常会将测试写在一个单独的程序集里,方便部署,因为我可以直接排除这个程序集。是否有人将测试写在要测试的程序集中?如果是,那么为什么?
我有一个单一的解决方案,其中包括一个接口项目,一个测试项目,一个领域项目和一个数据项目。当我发布时,我只发布接口,因为它不引用测试,所以它不会被编译进去。
编辑:底线真正的问题是你不希望它成为最终发布的一部分。你可以在VS中使用单独的项目/程序集自动实现此目标。但是,如果您正在使用nant或msbuild,则可以将其放在同一个程序集中,但是不要编译该代码。这样可能会有点混乱,保持整洁,使用单独的程序集 :)
这个问题在网络上广受争议。
我们使用单独的程序集和InternalsVisibleTo属性来帮助测试程序集查看被测试程序集的所有内部内容。我们倾向于为每个被测试的程序集制作一个测试程序集。
在部署中留下测试代码:
另一方面,解耦允许您:
希望对您有所帮助
谢谢,
罗布
你可以将它们保留在解决方案中的单独程序集中,然后在调试时将它们合并,但在发布时不要将它们合并。