在Xunit2中自定义测试名称

cec*_*lip 6 .net xunit2

当我今天使用xUnit v2运行我的测试时,我通常使用如下命名约定:

[Fact(DisplayName= "Method Will Do Something")] public void Method_Will_Do_Something() { }

我可以插入什么扩展点,这将允许我根据我的测试方法的命名约定设置我的测试显示名称?

Bra*_*son 6

最简单的方法:自定义事实属性,发现者和测试用例.

示例:https://github.com/xunit/samples.xunit/tree/master/RetryFactExample

对于自定义测试用例,派生自XunitTestCase并覆盖该Initialize()方法.调用后base.Initialize(),DisplayName适当设置属性.

您可以在XunitTestCase此处查看默认行为:https://github.com/xunit/xunit/blob/master/src/xunit.execution/Sdk/Frameworks/XunitTestCase.cs