从单元测试NUnit中理解.NET自定义属性的应用[4]

发表于:2009-08-13来源:作者:点击数: 标签:单元nunitNUnitNunitNUNIT
从单元测试NUnit中理解.NET自定义属性的应用[4] 单元测试工具 关键字:.NET NUnit 而InvokeXXX()函数则利用反射机制运行相关函数,可以看看以下几个代码段: //From Template TestCase in NUnit.Core namespace private void InvokeSetUp() { MethodInfo met

从单元测试NUnit中理解.NET自定义属性的应用[4]  单元测试工具

关键字:.NET NUnit

  而InvokeXXX()函数则利用反射机制运行相关函数,可以看看以下几个代码段:

  //From TemplateTestCase in NUnit.Core namespace

  private void InvokeSetUp()

  {

  MethodInfo method = FindSetUpMethod(fixture);//取得[SetUp]标记的函数反射实例

  if(method != null)

  {

  InvokeMethod(method, fixture);//运行该函数

  }

  }

  FindSetUpMethod(…)通过调用一个叫FindMethodByAttribute(…)的函数,利用反射机制来获得可调用该函数的MethodInfo,并最后通过InvokeMethod(MethodInfo,…)来运行。

  //From Test class in NUnit.Core namespace

  protected void InvokeMethod(MethodInfo method, object fixture)

  {

  if(method != null)

  {

  try

  {

  method.Invoke(fixture, null);//调用由method实例反射的方法或构造函数

  }

  catch(…)

  //…

  }

原文转自:http://www.ltesting.net