【问题标题】:Cucumber with Ruby: Can it be used from a gem?Cucumber with Ruby:可以从宝石中使用吗?
【发布时间】:2012-12-10 12:56:13
【问题描述】:

我想在 Ruby 中为 Cucumber 开发一些可重用的步骤定义和场景大纲。

我已经搜索了Cucumber wiki,但似乎没有关于将 Cucumber 与 Ruby gems 一起使用的信息。

是否支持从已安装的 Gem 执行功能?

或者用户是否必须手动更改到 gem 安装目录并明确引用要从那里运行的功能?

【问题讨论】:

    标签: ruby gem cucumber


    【解决方案1】:

    如果我正确理解了您的问题,您只需为可重用的定义和步骤创建一些库,然后在 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 创建了一些可重复使用的部分。

    【讨论】:

    • 完美,谢谢比利。我在 Cucumber wiki 上的任何地方都找不到关于 env.rb 的严格文档,这是 Cucumber 特定的文件还是其他什么......?
    • @KomodoDave,我很高兴我的回答有帮助。对于env.rb,是的,它是 Cucumber 的原生功能。我是从“The Cucumber Book”中读到的,在 Wiki 中有一些介绍,虽然不明显github.com/cucumber/cucumber/wiki/Hooks -- 参见 Global Hook 部分
    • 这是我看到文件引用的地方。感谢您提供链接。作者希望你买这本书是可以理解的,所以我想他们会为他们的图书馆获得一些回报:)
    • env.rb 不是必须的,任何文件名都可以,只要它在features/support 目录中即可。
    【解决方案2】:

    原来cucumber --help 指明了方向:

    cucumber -r gem-name feature-name.feature
    

    更新:这不起作用。还有其他建议吗?

    【讨论】:

      【解决方案3】:

      有一个cucumber gem 安装二进制文件cucumber

      运行此命令,将采用默认设置。这意味着它将在 ./features 下相对于当前路径查找具有 .feature 扩展名的文件。它将期望./features/step_definitions 保存带有*_step.rb 的文件,并在其中搜索步骤。

      编辑:没关系,我误读了您的问题,并认为您想了解黄瓜宝石及其默认路径。

      【讨论】:

        猜你喜欢
        • 2016-06-04
        • 2015-05-29
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2017-04-13
        • 1970-01-01
        相关资源
        最近更新 更多