SpecFlow场景排除

时间:2018-04-14 07:35:19

标签: specflow xunit

我希望我的所有场景都可以运行,但我想标记一些场景,以便它们仅在某些环境中运行时被排除。例如,当一个场景没有标签时,我希望它在所有环境中运行,但如果我用@dev标记它,我希望它从所有非开发环境中排除。

有没有办法使用范围绑定来实现这一点,还是在测试运行器上使用执行标志更好地实现?

除了传递给测试运行器的标志之外,我想也许可以使用方案钩子,但不确定如何实现排除条件,因为一旦方案启动,我找不到中止它的方法。 / p>

1 个答案:

答案 0 :(得分:1)

使用xUnit时,标签会被翻译成Traits 通过它们,您可以过滤要执行的场景。

使用@dev标记运行所有测试:

  

xunit.console.exe ... -trait" Category = dev"

Brendan Connolly写了一篇关于xUnit特征的好文章:http://www.brendanconnolly.net/organizing-tests-with-xunit-traits/

关于中止已经开始的方案:这是不可能的。

相关问题