您的位置:軟件測(cè)試 > 開(kāi)源軟件測(cè)試 > 開(kāi)源單元測(cè)試工具 > Nunit
NUnit學(xué)習(xí)從零開(kāi)始
作者:網(wǎng)絡(luò)轉(zhuǎn)載 發(fā)布時(shí)間:[ 2013/1/29 15:01:29 ] 推薦標(biāo)簽:

這個(gè)類很簡(jiǎn)單,編譯通過(guò),運(yùn)行,一切ok。

   3)在同一個(gè)項(xiàng)目中,增加一個(gè)用來(lái)測(cè)試 Account 類中的方法的測(cè)試類(里面的幾個(gè)Attribute是關(guān)鍵的)

using NUnit.Framework;    // 千萬(wàn)別忘了這一行

[TestFixture] // 這個(gè)Attribute說(shuō)明 AccountTest 類中包含有測(cè)試
public class AccountTest
{
    [Test]    // 這個(gè)Attribute說(shuō)明了 TestTransferFunds() 方法是用來(lái)做測(cè)試的
    // 一般測(cè)試方法的名字是在被測(cè)試方法名前加上Test
    public void TestTransferFunds()   
    {
        // 準(zhǔn)備工作
        Account source = new Account();
        source.Deposit(200.00F);
        Account destination = new Account();
        destination.Deposit(150.00F);

        source.TransferFunds(destination, 100.00F);    // 轉(zhuǎn)賬

        // 利用 Nunit.Framework 中的 Assert 類看看轉(zhuǎn)賬以后兩個(gè)賬戶的余額是否正確
        Assert.AreEqual(250.00F, destination.Balance);
        Assert.AreEqual(100.00F, source.Balance);
    }
}

然后編譯一下,生成一個(gè) exe 文件(如果要生成 DLL 的話,更改一下這個(gè)這個(gè)項(xiàng)目的 Output Type屬性,改成 Class Library可以了。這個(gè)改動(dòng)還是在Solution Explorer 窗口中,項(xiàng)目名上 右鍵--屬性。 對(duì)于這個(gè)例子,生成DLL的話不需要 Main() 方法了)。

    4)打開(kāi)NUnit,F(xiàn)ile--Open,找到剛才編譯生成的 exe。然后 Run,滿眼可愛(ài)的綠色,說(shuō)明測(cè)試都成功了^_^。

如果想看看測(cè)試失敗的樣子,可以把 Assert.AreEqual() 里面的值改一下……

例子中只用到了 Test Fixture 和 Test 這兩個(gè)Attribute,其他更多的用法在 NUnit 文檔中寫(xiě)得十分清楚,文檔中也有些更好的例子……

自動(dòng)化的單元測(cè)試有什么用? 答:省時(shí)省力。當(dāng)一個(gè)系統(tǒng)需要測(cè)試的類/方法 成千上萬(wàn)時(shí),手工的測(cè)試方法(用控制臺(tái)打印出信息等等)的效率會(huì)比較低。

總結(jié):NUnit 很好的利用了反射機(jī)制,單元測(cè)試十分方便。但是對(duì)于復(fù)雜的對(duì)象,寫(xiě)出低耦合的測(cè)試代碼可能有一定難度

上一頁(yè)12下一頁(yè)
軟件測(cè)試工具 | 聯(lián)系我們 | 投訴建議 | 誠(chéng)聘英才 | 申請(qǐng)使用列表 | 網(wǎng)站地圖
滬ICP備07036474 2003-2017 版權(quán)所有 上海澤眾軟件科技有限公司 Shanghai ZeZhong Software Co.,Ltd