第一次使用NUnit的人可能对上面的代码有些地方感到陌生,因为NUnit通过反射来获取程序中的相关信息,从而得知哪些类中的哪些方法需要进行测试,所以有必要对NUnit的一些常用属性进行了解:
TestFixture属性:用来标识类,表示这个可能包含有用于测试的方法。
Test属性:用来标识方法,表示这个方法需要进行测试(前提是该方法所在的类是可以测试的)。
SetUp属性:用来标识方法,在开始所有测试之前执行,用来在测试前初始化一些资源,比如初始化类。
TearDown属性:用来标识方法,在所有测试完成之后执行,用来释放一些资源。
Ignore属性:用来标识方法,指示这个方法由于某些原因暂时不需要测试(比如没有完成相关代码)。
更多其它属性的介绍请查阅随同下载的文档(位于doc目录下的attributes.html)。另外我们还需要注意的是,用于测试的类必须是public的,最好有一个缺省的构造函数。同时用于测试的方法必须不带任何参数,并且不返回任何参数,同时也必须是public的。
程序代码:
using System;
using System.Collections.Generic;
using System.Text;
namespace NUnitDemo
{
/// <summary>
/// 说明:这是一个类,用于测试。
/// 作者:周公
/// 日期:2007-3-27
/// 原文出处:http://blog.csdn.net/zhoufoxcn
/// </summary>
public class Person
{
private int personId;
private string name;
private DateTime birthday;
/// <summary>
/// 生日
/// </summary>
public DateTime Birthday
{
get { return birthday; }
set { birthday = value; }
}
/// <summary>
/// 姓名
/// </summary>
public string Name
{
get { return name; }
set { name = value; }
}
/// <summary>
/// 编号
/// </summary>
public int PersonId
{
get { return personId; }
set { personId = value; }
}
}
}