Xai*_*oft 12 mbunit nunit unit-testing
我读到MbUnit是关于类固醇的Nunit,但我不明白为什么.从我在这里读到的,我在这里说Nunit比MbUnit更受欢迎.其中一个主要原因是因为它具有流畅的界面.这是唯一的原因吗?
为什么我更喜欢MbUnit而不是Nunit,反之亦然?谢谢!
Ner*_*ury 10
NUnit最初是作为JUnit的一个端口开始的,并且已经存在了很长时间.MBUnit事后发生了,它带来了"Generative"单元测试.这意味着它能够进行单个单元测试并从中生成多个单元.一种方法是[RowTest]属性.
如果典型的单元测试不采用任何参数,RowTest将采用参数并从中生成多个测试.我相信NUnit现在也有RowTest的概念.
[Test]
[Row(1,1,2)]
[Row(2,2,4)]
[Row(1,2,3)]
public void X_plus_Y_equals_Z(x,y,z)
{
Assert.AreEqual(z, x+y);
}
Run Code Online (Sandbox Code Playgroud)
这将导致在测试运行器中运行3个测试.还有用于回滚数据库事务的功能.
NUnit具有流畅的断言接口,这很好,但不是真正的卖点.NUnit可能还有一些更好的工具支持(Resharper的测试运行器可以与NUnit一起开箱即用,但需要MBUnit的插件).
最后,你应该选择一个框架并继续使用它.您所掌握的技能从一个框架到另一个框架都非常便携.
| 归档时间: |
|
| 查看次数: |
8325 次 |
| 最近记录: |