下面修改代碼。VB代碼如下:
Public Class Book
Private pid As String = Nothing
Private pname As String = Nothing
Public Property id() As String
Get
Return pid
End Get
Set(ByVal Value As String)
pid = Value
End Set
End Property
Public Property name() As String
Get
Return pname
End Get
Set(ByVal Value As String)
pname = Value
End Set
End Property
End Class
C#代碼如下:
using System;
using System.Collections.Generic;
using System.Text;
namespace NUnitCS
{
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;
}
}
}
}
J#代碼如下:
package NUnitJS;
public class Book
{
private String pid = null;
private String pname = null;
/** @property */
public void set_id(String value)
{
pid = value;
}
/** @property */
public String get_id()
{
return pid;
}
/** @property */
public void set_name(String value)
{
pname = value;
}
/** @property */
public String get_name()
{
return pname;
}
}
至此,用于測試的類編寫完成。
四、編寫測試用例
這里只用了一個(gè)類進(jìn)行測試,名為BookTest,以前這樣的類可能需要繼承NUnit.Framework.TestCase類,但現(xiàn)在只需要對該類使用TestFixture屬性進(jìn)行標(biāo)識即可,而無須繼承了。BookTest類包含兩個(gè)用例,分別對應(yīng)該類的testId和testName方法,即每個(gè)方法實(shí)現(xiàn)了一個(gè)測試用例。注意,在NUnit中,這些用來實(shí)現(xiàn)測試用例的方法有兩種手段進(jìn)行標(biāo)識:一個(gè)是以testXXX的格式來命名,一個(gè)是使用Test屬性進(jìn)行標(biāo)識。此外,BookTest還有Init和Dispose這兩個(gè)方法,并分別使用SetUp和TearDown屬性來進(jìn)行標(biāo)識,前者在每個(gè)測試方法開始之前執(zhí)行,多用來做初始化;后者在每個(gè)測試方法完成之后執(zhí)行,多用來清理資源。注意,這兩個(gè)方法的名稱并沒有什么限制,但必須用SetUp和TearDown屬性進(jìn)行標(biāo)識。另外,NUnit還提供了TestFixtureSetUp和TestFixtureTearDown屬性,功能與SetUp和TearDown類似,但前者是在所有用例執(zhí)行之前做初始化、之后做清理,而后者是在每個(gè)用例執(zhí)行之前做初始化、之后做清理。下面開始編寫B(tài)ookTest。