一、Mono簡(jiǎn)介
Mono是由Novell公司(的Suse Linux是其產(chǎn)品)開發(fā)的一款開源的.net程序運(yùn)行平臺(tái)。長(zhǎng)期以來,.net因?yàn)橛形④涍@棵大樹,還是頗受推崇的,包括我個(gè)人也很推崇。不過由于不具備跨操作系統(tǒng)平臺(tái)的能力,比如說將程序由Windows移植到Linux上,因此也頗遭詬病。Mono所應(yīng)對(duì)的正是這一情況。
Mono不僅提供了基本的.net類庫(kù),也有自己的擴(kuò)展。但Mono現(xiàn)在還不太完善,更多的時(shí)候只能用于技術(shù)嘗試,不過畢竟實(shí)現(xiàn)了.net程序跨平臺(tái),F(xiàn)在Mono新版本是1.1.13.2,可以從http://www.mono-project.com/Downloads上下載,本文使用的是1.1.12.1(安裝到了本機(jī)的C:Program FilesMono-1.1.12.1文件夾下,但沒有安裝.net環(huán)境)。Mono提供了包括C#(mcs)和VB.net(mbas)等在內(nèi)的多款編譯器,還提供了一個(gè)XSP服務(wù)器,能夠運(yùn)行ASP.net程序了。但這里將只會(huì)用到C#。
二、NUnit簡(jiǎn)介
NUnit是一款堪與JUnit齊名的開源的回歸測(cè)試框架,供.net開發(fā)人員做單元測(cè)試之用,可以從www.nunit.org網(wǎng)站上免費(fèi)獲得。本文使用的是Mono自帶的NUnit 2.2.0。
三、編寫用于測(cè)試的類
用于測(cè)試的類很簡(jiǎn)單,名為Book,只有id和name兩個(gè)屬性,這兩個(gè)屬性將分別用于兩個(gè)用例當(dāng)中。由于我沒有在當(dāng)前的系統(tǒng)中安裝.net環(huán)境,自然也無法使用Visual Studio.net、Delphi或是SharpDevelop這些開發(fā)工具,只好用記事本了。
打開記事本后,首先將該文件保存,我保存在了本機(jī)的G:MDZPCKMonoNUnit文件夾下,文件名Book.cs。然后輸入代碼,如下:
using System;
namespace NUnitCS
{
public class Book
{
private string pid = null;
private string pname = null;
public string id
{
get
{
return pid;
}
set
{
pid = value;
}
}
public string name
{
get
{
return pname;
}
set
{
pname = value;
}
}
}
}
至此,用于測(cè)試的類編寫完成了。