现在的位置: 首页 > 综合 > 正文

学习NUnit测试2(简单的Nunit使用,用于了解Nunit)

2013年01月26日 ⁄ 综合 ⁄ 共 1093字 ⁄ 字号 评论关闭
测试中的相关属性

TestFixture:它标记一个类包含测试,申明该类是用来测试的。一般用在class的定义之前;

        Test一般是放在method之前,表示对该方法的测试;如前一篇文章所示的class。

       
SetUp/TearDown属性:这两个属性一般是用来对资源的初始化/清除的,每个测试的method之前/之后都会调用这两个属性所测试的函数。一般用来处理共享数据的初始化/清除。

        TestFixtureSetUp/TestFixtureTearDown 也是用来对资源的初始化/清除的,但是它是用来标记test
fixture初始化/清除一次时使用的,即整个测试过程中,只调用一次,一般用来标记连接数据库的方法。

       
Ignore属性:不用说大家也都能猜到是什么意思吧。当一个method还没有完成时,我们可以在它的测试函数前面加上该属性,当然也还要加上[Test]标签,那么在测试的时候,NUnit就会忽略对该函数的测试啦。等到该method完成之后,再去掉该[Ignore]标签,让它不再被忽略。

        
ExpectedException:有的函数会抛出某些异常,我们就可以写测试函数来判断该异常结果是否是预料之中的,如判断某个对象是否为空:

        [Test]
       
[ExpectedException(typeof(NullReferenceException))]
        public void
TestForException()
        {
            int[] arr =null;

            Class1 myclass = new Class1();
           
myclass.FindMax(arr);
        }

      
在这里,由于arr被赋予了null值,即为ExpectedException的类型中的NullReferenceException,测试的时候就会绿灯通过了。异常的类型还有很多,如被零除(DivideByZeroException)等,具体的可以参考NUnit的文档。

       category属性:用该属性,我们可以将测试的method分类,类名可以自己定义,如

       [Test]
        [Category("Short time")]
        public void
MyTest1()
        {
        }

         在NUnit中,我们可以查看categories,然后选择需要测试的category进行测试

【上篇】
【下篇】

抱歉!评论已关闭.