是否有可能将黄瓜测试标记为实时待定?

时间:2012-11-15 11:51:35

标签: cucumber

我们有很多测试用例需要在环境中使用特定数据,但环境没有很好地填充。

现在我们没有通过这些测试但是我正在考虑运行它们并将它们标记为“待定”而不是数据不存在,那么就可以很容易地单独运行它们。

这有可能吗?我怎么能停止黄瓜测试的执行,以便它被报告为挂起(或者任何其他状态与'失败'或'通过'不同,如果存在的话可以这样做。)

干杯!

2 个答案:

答案 0 :(得分:0)

我不太确定你的“实时”是什么意思,但总的来说是的。创建一个新的custom output formatter,创建待处理测试的列表并重新运行它们。重新运行输出格式化程序,默认情况下可用,几乎已经完成了您想要的操作。参见例如here。它允许您重新运行失败的测试。

如果查看重新运行格式化程序的source code,它具有以下内容:

def step_name(keyword, step_match, status, source_indent, background, file_colon_line)
        @rerun = true if [:failed, :pending, :undefined].index(status)
end

只需创建自己的自定义格式化程序,仅标记要重新运行的:pending状态的测试。您始终可以在测试中标记待处理的内容,例如,问题How do you mark a Cucumber Scenario as Pending

答案 1 :(得分:0)

您只需在步骤定义中调用pending即可停止执行该方案并将其标记为待处理。