我如何在Ruby中的多个项目之间共享一些常见的页面对象和黄瓜步骤定义

时间:2014-10-28 16:57:33

标签: ruby-on-rails ruby selenium-webdriver cucumber watir-webdriver

我们有多个项目在黄瓜测试中使用一些常见的步骤定义和页面对象。我想不要在每个项目中复制这些常见的东西,但更愿意在多个项目之间分享这些东西。

以前有人做过这样的事吗?

我正在使用Ruby。

1 个答案:

答案 0 :(得分:1)

共享步骤可以打包为gem,并作为依赖项包含在两个项目中。

例如,我们有一个名为' common'的宝石,其中包含common.rb:

When(/^I share steps$/) do
  puts "And I do!"
end

Then(/^I should be able to use it from another project$/) do
  puts "seems ok!"
end

然后我们可以在每个依赖项目中创建features/step_definitions/common_steps.rb,该项目由一行组成:

require 'common'

然后我们像往常一样使用这些共享步骤:

Feature: Sample
  Scenario: Sample
    When I share steps
    Then I should be able to use it from another project