2013-02-27 70 views
2

我们试图使用NUnit来进行集成测试,但在准备测试系统时遇到了一些问题。在系统准备好测试之前,需要运行一些代码。所以我想我们可以编写一个SetUpFixture来运行这个初始化代码。这个工作正常,只要班级在正在测试的程序集中。但是,我们可能会编写这些程序集的20-30个,所以我想将它粘贴到一些可以简单地引用到每个测试程序集的帮助程序项目中。如果我这样做,NUnit不会运行SetUp方法,但(我想它只在正在测试的程序集中查找它们)。让NUnit使用SetUpFixture引用程序集

有什么办法让NUnit知道这个外部设置代码?我想避免拥有专门的属性和发现者,因为我们是一个大型组织,而且人们往往忘记了特殊的解决方案。

回答

0

您可以使用反射在待测组件的[SetUpFixture]中从外部装配中实例化您的“设置助手”对象。例如:

Assembly asm = Assembly.LoadFrom(pathToSetupHelperDll);    
Type setupHelper = asm.GetType("Setup.Helper"); 
object h = Activator.CreateInstance(setupHelper); 
MethodInfo m = setupHelper.GetMethod("DoSomething");    
m.Invoke(h, someParameter); 
相关问题