您的位置:軟件測(cè)試 > 開(kāi)源軟件測(cè)試 > 開(kāi)源單元測(cè)試工具 > Nunit
利用TestDriven和NUnit進(jìn)行單元測(cè)試
作者:網(wǎng)絡(luò)轉(zhuǎn)載 發(fā)布時(shí)間:[ 2014/1/2 9:46:41 ] 推薦標(biāo)簽:NUnit 單元測(cè)試

  2.10 [Category("NameOfCategory")]屬性

  這個(gè)屬性也很好。但是在TestDriven中無(wú)法使用。它表明我們可以把某些測(cè)試歸成一類(Category),我們可以給這個(gè)類別取個(gè)名字,然后可以指定是否對(duì)這個(gè)類別進(jìn)行測(cè)試。假設(shè)你有個(gè)函數(shù)需要運(yùn)行很長(zhǎng)的時(shí)間,你肯定不希望每次都去運(yùn)行它。那么你可以把它歸到某個(gè)類別中,然后在NUnit的GUI中將它排除在測(cè)試范圍之外。

[Test]
[Category("Long")]
// 這個(gè)測(cè)試方法屬于名字為L(zhǎng)ong的類別,我們可以在NUnit的GUI中選擇是否需要運(yùn)行這一類別的測(cè)試方法,但是TestDriven.net無(wú)法使用這個(gè)屬性。
public void VeryLongTest()
{
Assert.AreEqual( "This test will consum a very long time", "No, It will be completed in 0.1 seconds");
}

  2.11 [Explicit]屬性

  這個(gè)屬性和Ignore有相似之處,但是也有不同。如果指定了這個(gè)屬性,那么在測(cè)試的時(shí)候是不會(huì)運(yùn)行的。但是如果你指定了它(比如你把鼠標(biāo)放在這個(gè)方法上,然后選擇RunTest)這個(gè)測(cè)試方法會(huì)運(yùn)行。它也非常有用處,對(duì)于某些你想暫時(shí)避過(guò)的測(cè)試,它是一個(gè)好的選擇。

[Test, Explicit]
public void ExplicitTest()
{
Assert.AreEqual(1, 2); // 這個(gè)測(cè)試方法會(huì)自動(dòng)地被忽略掉,除非我們?cè)贜Unit的GUI中手動(dòng)選擇它或者把鼠標(biāo)放在它上面,再運(yùn)行TestDriven.net, 它才會(huì)被執(zhí)行
}

  3、總結(jié)

  其實(shí)NUnit的實(shí)際功能比我上面列舉的強(qiáng)大得多。但是對(duì)于程序員自己?jiǎn)卧獪y(cè)試來(lái)說(shuō),了解一些常用的屬性已經(jīng)足夠。TestDriven支持大部分屬性,使用起來(lái)也非常的方便。而且TestDriven還能提供NCover這個(gè)分析的利器。你大可以為自己的應(yīng)用程序創(chuàng)建一個(gè)工程,同時(shí)還為自己的測(cè)試代碼創(chuàng)建一個(gè)工程,測(cè)試和開(kāi)發(fā)同步進(jìn)行。良好的單元測(cè)試一定可以提高程序的質(zhì)量,同時(shí)也未必會(huì)耽誤太多時(shí)間,延緩項(xiàng)目的進(jìn)度。單元測(cè)試是如此的簡(jiǎn)單,也是如此的有用。希望上面的這些屬性對(duì)大家有所幫助,能夠提高大家的程序水平。

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