运行黄瓜时,黄瓜如何找到 .feature 文件



在Cucumber中,在创建新的项目目录并创建.feature文件并将其保存在编辑器中后,当Cucumber运行时,Cucumber如何找到该文件?文件是手动导出到 Cucumber 中,还是该工具扫描整个系统自动将自身映射到文件?

默认情况下,Cucumber 将加载根目录中"features"文件夹中的所有文件(递归)。

如果要使用其他位置,可以使用命令"Cucumber myfolder"运行Cucumber,该命令将在项目根目录中名为myfolder的文件夹中查找功能。


当对功能使用子目录时,它会变得有点复杂 -> 来自此站点(复制此处以供记录) - http://makandracards.com/makandra/4971-how-to-organize-and-execute-cucumber-features-e-g-in-subdirectories

默认情况下,cucumber 加载它可以(递归地)在您作为参数传递给 Cucumber 的目录中找到的所有 *.rb 文件。

$ cucumber # defaults to directory "features"
$ cucumber features
$ cucumber my/custom/features/dir

因此,如果您想在子目录中组织功能,则在运行整个测试套件时不会有任何问题。Cucumber 也会在子目录中自动加载和运行功能。

但是,在子目录中运行功能并不是开箱即用的。这样做的原因是 cucumber 会在子目录中查找您的步骤定义和支持文件。

您现在可以做的是在子目录中提供所有需要的支持文件和步骤定义(不切实际),或者在运行子目录功能时使用 -r 命令行参数:

cucumber -r features

在测试运行程序类中,可以指定功能文件所在的路径。

最新更新