如何将Capybara纳入Cucumber项目的模块中
我定义了一个模块:
module Support include Capybara::DSL def self.do_something click_link 'Questions' end end
它位于features / support / support.rb
我的env.rb:
require 'capybara' require 'cucumber' require 'capybara/cucumber' Capybara.app_host = "http://www.stackoverflow.com" Capybara.run_server = false Capybara.default_driver = :selenium
我在steps.rb中调用模块的function:
Support::do_something
我有例外:
undefined method `click_link' for Support:Module (NoMethodError)
如何在支持模块中提供Capybara?
水豚应该extend
,不include
-ed:
module Support extend Capybara::DSL def self.do_something click_link 'Questions' end end
module SupportModule class Support include Capybara::DSL def do_something click_link 'Questions' end end end s = SupportModule::Support.new s.do_something
http://rubydoc.info/github/jnicklas/capybara/master/Capybara/DSL