在编写单元测试时,是将测试放在要测试的程序集中还是放在单独的测试程序集中?我已经编写了一个应用程序,将测试放在一个单独的程序集中的类中,这样可以很容易地排除程序集。有没有人在你想要测试的程序集中编写测试,如果是的话,理由是什么?
发布于 2008-11-07 11:28:34
我有一个单一的解决方案,包含一个接口项目、一个测试项目、一个域项目和一个数据项目。当我发布时,我只是发布接口,它没有引用Tests,所以它不会被编译进去。
编辑:底线是你不希望它成为你最终版本的一部分。您可以通过使用单独的项目/程序集在VS中自动实现这一点。但是,您可以将其放在相同的程序集中,但如果您使用的是nant或msbuild,则不能编译该代码。虽然有点凌乱,但要保持整洁,使用单独的程序集:)
发布于 2008-11-07 11:32:11
这在网络上引起了广泛的争论。
我们使用单独的程序集和InternalsVisibleTo属性来帮助测试人员程序集查看被测试程序集的所有内部。我们倾向于为我们正在测试的每个程序集制作一个测试程序集。
发布于 2008-11-07 11:31:32
在不同的程序集中。否则您的程序集将引用测试框架(例如Nunit.Framework.dll),您将需要将其安装在客户机器上。
即使您发布的是一个库,并且您希望您的客户将单元测试视为如何使用您提供的对象的示例或详细说明,将其包含在生产程序集中也没有什么好处。
https://stackoverflow.com/questions/271808
复制相似问题