如何找到未使用的黄瓜步骤

我和Cucumber一起工作了大约一年,并且一直在不断重构function和步骤定义。 我在许多文件中定义了大量的步骤,我不禁觉得不再需要其中许多文件。 有没有办法找到哪些黄瓜步骤定义不再使用?

stepdefs格式化程序可以执行此操作,例如:

cucumber --dry-run -f stepdefs 

对于任何非比赛,它将打印“不符合任何步骤”。

如果您有任何由其他步骤使用的步骤,则省略--dry-run以获得准确的结果。 使用--dry-run ,不执行步骤,黄瓜也不会发现实际使用了引用的步骤。

您可以尝试在诸如simplecov之类的覆盖工具下运行您的故事。

默认情况下,它可能会排除测试代码,例如黄瓜步骤,因为通常人们对覆盖了多少应用程序代码而不是测试代码的数量感兴趣,但这应该很容易反转。