10 2011 档案
摘要:接上篇14,RepeatAttribute (NUnit 2.5)RepeatAttribute 是用来指定一个测试用例应该运行几次。如果任何一次失败,以下的次数将不会运行并只报告一次错误。15,RequiredAddinAttribute (NUnit 2.5)RequiredAddin attribute 用来指定一个程序集如果要正确运行所需要的程序集。如果指定的程序集没有被引用,整个程序将会标记为不可执行的。在3个试用版本中,这个特性可以被应用到类或方法上,但是从下个版将会限定只用到程序集。示例:[assembly: RequiredAddin("MyTestFixtureAd
阅读全文
摘要:最早的时候,Nunit使用继承和命名约定来确认方法或类是用来测试的。但从2.0开始,开始使用了自定义特性custom attributes:这样你不必继承一个特定的类,可以自由的规定类的层次;没有了命名约定,你可以按方法的意图来命名。所有的NUnit特性attributes都包含在NUnit.Framework的命名空间中,因此每个文件都应该引用这个命名空间,你的测试项目也应该引用nunit.framework.dll的程序集。从2.4.6开始,NUnit特性attributes不再是封闭的sealed,任何继承自它们的特性attributes都会被识别。Nunit提供了36种可供使用的特性a
阅读全文
摘要:从2.4之后,NUnit就采用了新的“基于约束”的模型,所有的断言都是在约束的基础上的来实现的。正如前文所说的,我们可以用同一个方法和不同的约束实现不同的断言。这个方法,有相当数量的重载版本:Assert.That( object actual, IResolveConstraint constraint );如果你继承自AssertionHelper类实现自己的test fixture class , 可以用 Expect() 方法替代 of Assert.That()...Expect( object actual, IResolveConstraint constraint );我们可以
阅读全文
摘要:断言是任何一个xunit框架的核心,nunit中的Assert类,它提供一系列丰富的静态方法来供我们调用。如果一个断言失败,这个方法不会返回但是会报告一个错误,那么断言之后的代码就不会被执行,因此,最好在一个测试中包含一个断言。经典模型在Nunit2.4以前,使用经典模型:每一个断言调用一个单独的方法。如:// 测试两者是否相等Assert.AreEqual( int expected, int actual );// 测试两个对象是否是同一个引用Assert.AreSame( object expected, object actual );基于约束(Constraint-based)模型.
阅读全文
摘要:Nunit是.net平台下的单元测试框架,来自于junit,同属于xunit的一员,现在正式发布的版本已经更新到2.5.10,如果还没有安装的可以去下载,nunit官网.尽管现如今的vs已经集成了自己的单元测试,用起来还是相当的方便,但是我们了解一些.net平台下的源的项目时或一些示例时,测试框架无不是nunit,因此对nunit进行一些了解还是非常必须的。开始当你安装之后,会有两种不同的方式来运行你的的测试。控制台运行nunit-console.exe,运行最快,但是不利于交互;图形运行nunit.exe,一个win form的应用程序,提供一个图形界面,让你更直观的控制你的测试运行。安装完
阅读全文