[DllImport(“user32.dll”)]
public static extern int MessageBoxA(
int p, string m, string h, int t);
//…
|
[WebMethod]
public string HelloWorld()
//…
|
//
一个
NUnit
测试程序集中代码
[SetUp]
public void Init()
//…
[TearDown]
public void Destroy()
//…
[Test]
public void TestXXX()
//…
|
//From TemplateTestCase in NUnit.Core namespace
//
用于执行测试的
Run
函数
public override void Run(TestCaseResult testResult )
{
//…
try{
//…
InvokeSetUp();//
首先运行标有
[SetUp]
标记的函数
//…
InvokeTestCase();
//
然后是
[Test]
//…
}
catch(…)
//…
finally {
//…
InvokeTearDown();//
最后是
[TearDown]
标记的函数
//…
}
//…
}
|
//From TemplateTestCase in NUnit.Core namespace
private void InvokeSetUp()
{
MethodInfo method = FindSetUpMethod(fixture);
//
取得
[SetUp]
标记的函数反射实例
if(method != null)
{
InvokeMethod(method, fixture);//
运行该函数
}
}
|
//From Test class in NUnit.Core namespace
protected void InvokeMethod(MethodInfo method,
object fixture)
{
if(method !=
null)
{
try
{
method.Invoke(fixture, null);//
调用由
method
实例反射的方法或构造函数
}
catch(…)
//…
}
}
|