既然是從零開(kāi)始,先介紹一下NUnit :一個(gè).NET 框架下的單元測(cè)試框架,提供了類似于 JUnit的功能,也是 .NET 框架下開(kāi)發(fā)者應(yīng)用廣泛的單元測(cè)試框架之一(其他的還包括 CSUnit 等等)。
它的基本原理是通過(guò) .NET 的反射機(jī)制,利用代碼中的元數(shù)據(jù)(Attribute)來(lái)辨識(shí)到底有哪些單元測(cè)試。單元測(cè)試(Unit Test)是測(cè)試驅(qū)動(dòng)開(kāi)發(fā)(Test-Driven Development,TDD)很重要的一環(huán),而TDD又是敏捷開(kāi)發(fā)方法(比如極限編程--eXtreme Programming)的重要組成部分…… 總之,單元測(cè)試很重要對(duì)了。 ^_^ (有關(guān)TDD、XP的詳細(xì)介紹在博客園的很多blog上有,當(dāng)然 google 上更多了)
例子開(kāi)始:
1。下載、安裝 NUnit(新版可能是 2.2.0)
2。很重要的步驟:測(cè)試一下 NUnit 是否安裝成功。
方法:打開(kāi) NUnit,F(xiàn)ile--Open--選 NUnit 安裝目錄下的bin目錄中的 nunit.tests.dll。這時(shí)NUnit 主窗口左部的樹(shù)型列表中會(huì)出現(xiàn)很多個(gè)測(cè)試的名字,然后點(diǎn) Run 按鈕,接著測(cè)試開(kāi)始運(yùn)行了,直到 NUnit 主窗口左部的樹(shù)型列表中所有的測(cè)試前面都變成綠色,那是成功了。(失敗的測(cè)試會(huì)有紅色的提示,沒(méi)有運(yùn)行的測(cè)試會(huì)有黃色的提示。在這一步中,有可能 Console Runner 那個(gè)測(cè)試集合會(huì)出現(xiàn)問(wèn)題。萬(wàn)一出現(xiàn)問(wèn)題,重啟一下 NUnit 再 Run,一般都是沒(méi)問(wèn)題的)
2。怎么在開(kāi)發(fā)中使用 NUnit 框架?
1)打開(kāi)VS.NET 2003,新建一個(gè) C# 的 Console 項(xiàng)目,在項(xiàng)目的 References 添加 nunit.framework(References 在 Solution Explorer 窗口中,右鍵,Add Reference...)
2)隨便寫一個(gè)類
public class Aclearcase/" target="_blank" >ccount // 銀行帳戶類
{
private float balance; // 賬戶的余額
public void Deposit(float amount) // 存錢
{
balance+=amount;
}
public void Withdraw(float amount) //取錢
{
balance-=amount;
}
public void TransferFunds(Account destination, float amount) // 轉(zhuǎn)賬
{
destination.Deposit(amount);
Withdraw(amount);
}
public float Balance
{
get{ return balance;}
}
public static void Main(string[] args)
{
Account source = new Account(); // 新建個(gè)賬戶
source.Deposit(200.00F); // 存200
Account destination = new Account(); // 又建了一個(gè)
destination.Deposit(150.00F); // 存150
source.TransferFunds(destination, 100.00F); // 第一個(gè)賬戶轉(zhuǎn)給第二個(gè)100
}
}