我可以--require
多个不同的文件夹吗?可以在--require
之后出现第二个或第三个参数吗?
这是正确的语法吗?
cucumber --require ./folder1/ ./folder2/ --tags ${groups} --format json -o cucumber.json
答案 0 :(得分:1)
是的,Ruby Cucumber可以--require
(或-r
)多个文件夹。 cucumber --help
没有明确说明它是否得到支持,但这是一个简单的实验,它对我有用。但是,您需要在每个目录之前说---require
。例如,如果您想要--require
folder1
和folder2
,请执行
cucumber --require folder1 --require folder2
如果您--require
任何文件夹,Cucumber不再隐含地要求features
,您有features
中的步骤定义和folder1
中的一些支持代码,您需要明确地--require
这两者:
cucumber --require features --require folder1
请注意,--require
仅控制需要Ruby代码;即使使用--require
,Cucumber仍默认在features
中查找功能。但您可以要求它运行多个功能或功能目录:
cucumber features1 features2
同样,如果您指定要运行的某些功能但仍希望在features
目录中运行功能,则必须明确说明:
cucumber features features1
请仔细考虑是否要求每个经营Cucumber套件的人都必须了解其非标准结构。每个人都可能更容易在支持文件中要求您需要的代码。例如,如果folder1
只有一个文件folder1.rb
,则每次将--require folder1
放入support/folder1.rb
并正常运行黄瓜时,不要运行带require_relative '../../folder1/folder1.rb'
的Cucumber:
{{1}}