使用Jenkins和NUnit时,如何使未记录的SpecFlow测试失败(没有标记为不确定)?

时间:2016-04-22 14:09:39

标签: jenkins nunit specflow

我们在Visual Studio中使用SpecFlow和NUnit。非常有用,等等。一旦我们完成开发,签入的代码将转到构建服务器,该服务器使用Jenkins构建并运行所有测试。非常有帮助,等等。

然而,有一个令人讨厌的漏洞:如果您使用了定义的SpecFlow中的步骤,则使用默认步骤定义将测试标记为不确定,并且然后b / NUnit忽略不确定的测试(显然MSTest失败了),然后c / Jenkins没有检测到问题并传递了构建。这意味着我们的构建服务器可以通过甚至无法正确定义的测试。

所以,任何人都可以:    - 告诉我如何让SpecFlow在丢失的步骤上抛出错误? (无法在网上找到它或其他任何选项)或者:    - 告诉我如何让NUnit将不确定的测试视为失败? (再一次,无法在网上找到它的选项)或者:    - 不知何故让詹金斯拿起不确定的结果并将其视为失败?

将考虑所有建议,包括左侧字段!谢谢。

1 个答案:

答案 0 :(得分:2)

有一个配置选项可以更改此行为。

有关文档,请参阅here。我们在这里感兴趣的配置是missingOrPendingStepsOutcome

默认设置为:

missingOrPendingStepsOutcome="Inconclusive"

我们只需要更改(或添加设置),如下所示:

missingOrPendingStepsOutcome="Error"