uri*_*ium 19 .net unit-testing project-structure
我应该为单元测试开始一个新项目吗?这意味着我会得到两个可执行文件正确吗?然后我担心命名空间组织.我是否可以将单元测试放在与他们正在测试的类相同的名称空间中,尽管它们是不同项目的一部分?
这提出了另一个问题.我知道命名空间命名约定是CompanyName.TechnologyName.Feautre.Design.如何在我的解决方案/项目布局中实现这一目标?解决方案名称=公司名称,项目名称=技术名称?
如果是这样的话,这意味着我无法将我的单元测试分成新项目.
Mar*_*ann 35
最好的方法是为每个"生产项目"建立一个单独的单元测试项目.这可以确保您可以成对变化并移动它们.
如果您有一个单元测试项目涉及多个目标项目,则会在这两个项目之间创建一个人工紧密耦合,因为如果没有所有目标项目,您将无法编译单元测试项目.这再次使得单独测试单个项目变得非常困难 - 这就是单元测试的全部内容.
将单元测试保存在单独的库中非常重要,因为这样可以确保只测试代码的公共API(黑盒测试).
我通过在目标命名空间后附加"UnitTest"来命名我的命名空间.
我倾向于每个组件都有一个特定的测试项目/ 组件.测试程序集将与它应该测试的程序集具有相同的名称,并.Test
在名称和名称空间中添加.
这样,您可以将测试隔离,并且不会使用生产代码进行部署.
每个解决方案的1个测试项目,其中包含folders => regression/integration/unit,其子文件夹"镜像"您的解决方案项目/文件夹架构.
记住 - 测试不是您的生产代码.他们应该分开.
归档时间: |
|
查看次数: |
5448 次 |
最近记录: |