如何将 Capybara 包含到 Cucumber 项目的模块中 [英] How to include Capybara into module in Cucumber project
本文介绍了如何将 Capybara 包含到 Cucumber 项目的模块中的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我定义了一个模块:
module Support
include Capybara::DSL
def self.do_something
click_link 'Questions'
end
end
它位于 features/support/support.rb
It's situated at features/support/support.rb
我的环境.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中调用模块的函数:
I invoke function of module in steps.rb:
Support::do_something
我有一个例外:
undefined method `click_link' for Support:Module (NoMethodError)
如何让 Capybara 在支持模块中可用?
How can I make Capybara available in Support module?
推荐答案
Capybara 应该是 extend
-ed,而不是 include
-ed:
Capybara should be extend
-ed, not include
-ed:
module Support
extend Capybara::DSL
def self.do_something
click_link 'Questions'
end
end
这篇关于如何将 Capybara 包含到 Cucumber 项目的模块中的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文