您的位置:软件测试 > 开源软件测试 > 开源单元测试工具 > Nunit
NUnit学习笔记
作者:网络转载 发布时间:[ 2013/3/20 15:10:20 ] 推荐标签:
 

    Ignore属性,忽略测试,可以供类和方法使用,用于忽略暂时不想运行的测试用例。
    示例1:
    VB代码:
<TestFixture(), Ignore("class test ignore")> _
Public Class Test
<Test()> _
Public Sub TestIgnore()
End Sub
 
<Test()> _
Public Sub TestIgnore2()
End Sub
End Class
    C#代码:
        [TestFixture]
[Ignore("class test ignore")]
class Test
{
[Test]
public void TestIgnore()
{}
 
[Test]
public void TestIgnore2()
{}
}
    J#代码:
/** @attribute TestFixture() */
/** @attribute Ignore("class test ignore") */
public class Test
{
/** @attribute Test() */
public void TestIgnore()
{}
 
/** @attribute Test() */
public void TestIgnore2()
{}
}
测试效果:NUnit-GUI状态条为黄色。
示例2:
VB代码:
        <TestFixture()> _
Public Class Test
<Test(), Ignore("function test ignore")> _
Public Sub TestIgnore()
End Sub
 
<Test()> _
Public Sub TestIgnore2()
End Sub
End Class
C#代码:
        [TestFixture]
class Test
{
[Test]
[Ignore("function test ignore")]
public void TestIgnore()
{}
 
[Test]
public void TestIgnore2()
{}
}
J#代码:
        /** @attribute TestFixture() */
public class Test
{
/** @attribute Test() */
/** @attribute Ignore("function test ignore") */
public void TestIgnore()
{}
 
/** @attribute Test() */
public void TestIgnore2()
{}
}
测试效果:NUnit-GUI状态条为黄色,但与方法TestIgnore2对应的节点显示为绿色。由于本例仅忽略了方法TestIgnore,而这并不会影响TestIgnore2,因此TestIgnore2依然会正常运行。
 
    Suite属性。根据NUnit文档的说明,Suite属性是用来标记返回类型为NUnit.Core.TestSuite的类属性成员的,该类属性成员所返回的对象会包含一组测试类,也是说Suite属性其实是用来组织一组测试类的。那么组织这些测试类到TestSuite对象中有何用呢?其实在早期的NUint当中,提供有NUnit.TextUI.TestRunner类,该类有个Run方法,参数是TestSuite对象,通过该方法可以在代码中调用NUnit环境,从而运行TestSuite对象中的测试类。不过现在NUnit似乎已经不再使用这种方式了,故此对于Suite属性这里不再介绍。
 
    Category属性,分组测试,用于将测试类和测试方法分组,从而使测试类和测试方法可以按组进行测试。
    示例:
VB代码:
<TestFixture(), Category("class1")> _
Public Class Class11
<Test()> _
Public Sub Test()
End Sub
End Class
 
<TestFixture(), Category("class1")> _
Public Class Class12
<Test()> _
Public Sub Test()
End Sub
End Class
 
<TestFixture(), Category("class2")> _
Public Class Class21
<Test()> _
Public Sub Test()
End Sub
End Class
 
<TestFixture(), Category("class2")> _
Public Class Class22
<Test()> _
Public Sub Test()
End Sub
End Class
 
<TestFixture()> _
Public Class Class3
<Test(), Category("function1")> _
Public Sub Test11()
End Sub
 
<Test(), Category("function1")> _
Public Sub Test12()
End Sub
 
<Test(), Category("function2")> _
Public Sub Test21()
End Sub
 
<Test(), Category("function2")> _
Public Sub Test22()
End Sub
End Class
C#代码:
[TestFixture]
[Category("class1")]
class Class11
{
[Test]
public void Test()
{}
}
 
[TestFixture]
[Category("class1")]
class Class12
{
[Test]
public void Test()
{}
}
 
[TestFixture]
[Category("class2")]
class Class21
{
[Test]
public void Test()
{}
}
 
[TestFixture]
[Category("class2")]
class Class22
{
[Test]
public void Test()
{}
}
 
[TestFixture]
class Class3
{
[Test]
[Category("function1")]
public void Test11()
{}
 
[Test]
[Category("function1")]
public void Test12()
{}
 
[Test]
[Category("function2")]
public void Test21()
{}
 
[Test]
[Category("function2")]
public void Test22()
{}
}
J#代码:
/** @attribute TestFixture() */
/** @attribute Category("class1") */
public class Class11
{
/** @attribute Test() */
public void Test()
{}
}
 
/** @attribute TestFixture() */
/** @attribute Category("class1") */
public class Class12
{
/** @attribute Test() */
public void Test()
{}
}
 
/** @attribute TestFixture() */
/** @attribute Category("class2") */
public class Class21
{
/** @attribute Test() */
public void Test()
{}
}
 
/** @attribute TestFixture() */
/** @attribute Category("class2") */
public class Class22
{
/** @attribute Test() */
public void Test()
{}
}
 
/** @attribute TestFixture() */
public class Class3
{
/** @attribute Test() */
/** @attribute Category("function1") */
public void Test11()
{}
 
/** @attribute Test() */
/** @attribute Category("function1") */
public void Test12()
{}
 
/** @attribute Test() */
/** @attribute Category("function2") */
public void Test21()
{}
 
/** @attribute Test() */
/** @attribute Category("function2") */
public void Test22()
{}
}

上一页1234567下一页
软件测试工具 | 联系我们 | 投诉建议 | 诚聘英才 | 申请使用列表 | 网站地图
沪ICP备07036474 2003-2017 版权所有 上海泽众软件科技有限公司 Shanghai ZeZhong Software Co.,Ltd