【发布时间】:2016-08-03 16:39:18
【问题描述】:
我想向 NUnit 添加自定义测试报告器。我已经用 NUnit2 做了,但我现在需要使用 NUnit3。
为了实现报告器,我需要从框架中获取各种事件,例如测试的开始、结束和失败。
在 NUnit2 中,我使用 NUnitHook 注册了我的 EventListener,效果非常好。
在 NUnit3 中我需要使用扩展点机制,但是当我将扩展点添加到项目中时,VisualStudio (2012 Ultimate) 立即无法发现 NUnit 测试。
[TypeExtensionPoint(Description = "Test Reporter Extension")]
public class MyTestEventListener : ITestEventListener
{
public void OnTestEvent(string report)
{
Console.WriteLine(report);
}
}
如果我从类中删除 ITestEventListener 实现声明,它会完美地重新发现测试。
[TypeExtensionPoint(Description = "Test Reporter Extension")]
public class MyTestEventListener //: ITestEventListener
{
public void OnTestEvent(string report)
{
Console.WriteLine(report);
}
}
我做错了吗?有没有更好的方法来实现它?
【问题讨论】: