【发布时间】:2012-12-10 12:56:13
【问题描述】:
我想在 Ruby 中为 Cucumber 开发一些可重用的步骤定义和场景大纲。
我已经搜索了Cucumber wiki,但似乎没有关于将 Cucumber 与 Ruby gems 一起使用的信息。
是否支持从已安装的 Gem 执行功能?
或者用户是否必须手动更改到 gem 安装目录并明确引用要从那里运行的功能?
【问题讨论】:
我想在 Ruby 中为 Cucumber 开发一些可重用的步骤定义和场景大纲。
我已经搜索了Cucumber wiki,但似乎没有关于将 Cucumber 与 Ruby gems 一起使用的信息。
是否支持从已安装的 Gem 执行功能?
或者用户是否必须手动更改到 gem 安装目录并明确引用要从那里运行的功能?
【问题讨论】:
如果我正确理解了您的问题,您只需为可重用的定义和步骤创建一些库,然后在 features/support/env.rb 中需要此库(或 gem)
这里有一个和你需要的一模一样的 gem,你可以作为参考:https://github.com/jayzes/cucumber-api-steps
看看这个 gem 提供的功能:https://github.com/jayzes/cucumber-api-steps/blob/master/features/request.feature gem 创建了一些可重复使用的部分。
【讨论】:
env.rb 的严格文档,这是 Cucumber 特定的文件还是其他什么......?
env.rb,是的,它是 Cucumber 的原生功能。我是从“The Cucumber Book”中读到的,在 Wiki 中有一些介绍,虽然不明显github.com/cucumber/cucumber/wiki/Hooks -- 参见 Global Hook 部分
env.rb 不是必须的,任何文件名都可以,只要它在features/support 目录中即可。
原来cucumber --help 指明了方向:
cucumber -r gem-name feature-name.feature
更新:这不起作用。还有其他建议吗?
【讨论】:
有一个cucumber gem 安装二进制文件cucumber。
运行此命令,将采用默认设置。这意味着它将在 ./features 下相对于当前路径查找具有 .feature 扩展名的文件。它将期望./features/step_definitions 保存带有*_step.rb 的文件,并在其中搜索步骤。
编辑:没关系,我误读了您的问题,并认为您想了解黄瓜宝石及其默认路径。
【讨论】: