nunit使用方法:单元测试软件SoftwareNUNIT使用介绍说明

本文仅提供了public 思路方法 测试介绍说明 及前期工作和常用 断言和测试attribute

NUNIT使用介绍说明

:软件Software及安装

免费 开源 单元测试软件Software

安装只要运行安装 按所有缺省设置即可

NUNIT:www.nunit.org

NUNIT ADDIN :http://sourceforge.net/projects/nunitaddin/

2:DLL 测试

1:新建 个Class Library PROJECT

2:加入待测试DLL 引用

3:加入NUnit.Framework.dll 引用

4:在文件开头加入:using NUnit.Framework

5:在待测试 类前加入:[TestFixture]

6:在待测试 思路方法前加入:[Test]

7:启动NUNIT-GUI,新建项目 将新建 Class Library PROJECT加入 执行

3:Attribute介绍

1:TestFixture:每个待测试 类前必须加该Attribute

【注意】待测试类需要有 个public default constructor(或者是没有定义任何 constructor)

2:Test:每个测试 类中待测试 前必须加该Attribute

【注意】有Test attribute method必须是public 并且必须 void 也没有任何传入 参数 如果没有符合这些规定 在Test Runner GUI的中是不会列出这个method 而且在执行Unit Test 时候也不会执行这个method

3:TestFixtureSetUp 和TestFixtureTearDown介绍

这两个主要用在TestFixture里面 其作用是提供 组 执行任何测试运行的前(TestFixtureSetUP)和最后 个测试执行后(TestFixtureTearDown) 每 个TestFixture只能有 个TestFixtureSetUp思路方法和TestFixtureTearDown思路方法 如果 个以上 TestFixtureSetUp和TestFixtureTearDown思路方法 可以通过编译但是不会执行 注意 个TestFixture可以拥有 个TestFixtureSetUp和 个SetUp 也可以拥有 个TestFixtureTearDown和 个TearDown思路方法

TestFixtureSetUp 和 TestFixtureTearDown 被用在不方便使用SetUp和TearDown思路方法

般情况使用 SetUp 和TearDown attributes

4:SetUp 和 Teardown Attributes介绍

在写Unit Tests 时候 有时你会需要在执行每 个test method的前(或的后)先作 些预备或善后工作 当然 你可以写 个private method 然后在每 个test method 开头或最末端呼叫这个特别 method 或者 你可以使用我们要介绍 SetUp及Teardown Attributes来达到相同 目 如同这两个Attributes 名字 意思 有Setup Attribute method会在该TextFixture中 每 个test method被执行的前先被Test Runner所执行 而有Teardown Attribute method则会在每 个test method被执行的后被Test Runner所执行 般来说 Setup Attribute及Teardown Attribute被用来预备 些必须 objects(对象) 例如database connection、等等

5:Attribute介绍说明

TestFixture:每个待测试 类前必须加该Attribute

Test:每个测试 类中待测试 前必须加该Attribute

TestFixtureSetUp:在 个测试类中只执行 次 且在所有测试案例运行前执行

SetUp:在每个测试案例运行前执行

ADD:测试案例1

TearDown:在每个测试案例运行后执行

SetUp:在每个测试案例运行前执行

Sub:测试案例2

TearDown:在每个测试案例运行后执行

TestFixtureTearDown:在 个测试类中只执行 次 且在所有测试案例运行后执行

ExpectedException:检测抛出异常

[Test]

[ExpectedException(typeof(InvalidOperationException))]

[Test,ExpectedException(typeof(InvalidOperationException))]

Ignore :临时忽略 些测试

Ignore(“Not ready to test this yet”);

4:NUNIT 各种断言

断言用于帮助你确定某个被测试 是否工作正常 通常 个测试思路方法中会有多个断言 当 个断言失败时 该测试思路方法就会终止 可使用Assert或Assertion 断言

1:AreEquals(expected,actual[, message])

Expected是被测试代码 期望值 actual是被测试代码 实际值 message是 个可选 消息 在 2个值不 致时报告 Expected和actual可以是 个对象

对于浮点数 比较 使用AreEquals(expected,actual,tolerance[, message]),其中 tolerance表示精度 0.01表示仅比较小数后 2位

2:IsNull/IsNotNull(object[, message])

判断 个对象是空/非空

3:AreSame(expected,actual[, message])

判断Expected和actual是否是同 个对象

4:IsTrue(bool condition[, message])/IsFalse

判断条件是否为真/假

5:Fail([ message])

使测试立即失效

5:异常处理

NUNIT框架可以捕获任何异常 并且把它报告为 个 这些都不需要用户 参和

6:测试用例编写

NUNIT使用断言业判断待测试代码是否返回正确 结果 在编写测试用例 过程中 经常需要有 个正确 值作为依据 和测试代码返回 值进行比较 在有些情况下 可以比较容易地取到这些正确 值 但有时要取得这些正确 值并不容易 如在从数据库取数据时 难以设定 个正确 值 在这种情况下 最好使用 些已被测试是正确 或商用 模块 将这些测试过 或商用模块返回 值作为正确 值 作为 个比较参照

你可能感兴趣的:(工作,单元测试,测试,library,Constructor,attributes)