Tag: mbunit

VS 2010和MBUnit如何只运行一次测试

我安装了Gallio / MbUnit,并且正在使用VS 2010 RC,我希望能够在TestFixture内运行单个unit testing或仅运行所有unit testing,而不是每次调试时都运行整个项目中的所有测试。 你如何在VS 2010中做到这一点?

如何在DI Frameworks中使用AOP和C#TestFrameworks? (不适用于被测物品)

我提前为一个可怕的标题道歉 – 建议欢迎! 我一直在读DI和AOP,我想我掌握了基础知识; 至少对于添加日志记录的规范示例。 我想将它应用于我们在NUnit中创建的测试用例,例如能够为所有测试用例方法和他们调用的任何“帮助方法”自动添加入口/出口日志记录。 (而且我没有与NUnit联系 – 如果在另一个框架中更容易,请告诉我。) 注意 – 这不是关于被测试的主题; 我想将这些技术应用于测试用例本身。 很明显如何使用PostSharp来做到这一点 – 这是他们的第一个例子。 但是,我不想将他们的许可处理添加到我们的项目中,仅用于此实验。 我发现AOP for C#的所有其他参考都是基于IoC容器实现提供的(动态)拦截器,例如CastleWindsor,Unity,Spring.Net ……在这种情况下它们都有一个共同的问题:你需要一个一段安装代码,用于为要添加拦截器的对象创建代理。 (我原本认为这段代码也必须创建一个IoC容器,但我发现我错了。) 但我无法看到这个设置代码将用于nUnit测试用例的位置。 我提出的选项,以及他们的问题: 让testfixture类构造函数为自己创建一个代理。 由于递归(消费者要求事物,事物试图将代理返回到事物,代理尝试创建事物……从阅读此StackOverflow问题 )将无法工作 滚动我自己的reflection魔术(对我来说这将是一项艰巨的任务) 让构造函数包装testfixture类中的所有方法并返回这个’wrapped’对象(不确定这是否可能构造函数执行此操作) 在testfixture上使用静态构造函数来做这个魔术(假设您可以动态地将类的方法包装到位。) 使用模块cctor(通过Einar Egilsson的InjectModuleInitializer )在模块级别执行某些操作,并使用日志记录包装所有类中的所有方法。 最简单的:用于实例化测试用例的某种工厂(非测试参数),我可以使用其中一个IoC代理生成器 对于nUnit:我能找到的唯一方法是创建自定义AddIn 。 优势 – 可能不会破坏与ReSharper的集成。 缺点 – 部署到所有开发人员机器,尤其是对NUnit的更新。 是否还有其他方法可以为nUnit执行此操作? 对于MbUnit:看起来它将测试用例视为第一类值 ,这很简单。 优点:易于部署到所有开发人员。 缺点:测试不会出现在Resharper中。 旁注: 如何处理设置和拆卸 。 我的选项和结论中是否遗漏了任何内容? 有没有更简单的方法来做到这一点,我错过了?