rspec功能测试如何隐含地知道使用页面对象中的find
,within
和fill_in
等方法?
我为我的一些rspec测试编写了一个帮助器类,并希望使用这些方法,并意识到我需要将页面对象传递给方法,然后使用page.find
等。 / p>
答案 0 :(得分:1)
RSpec通过在需要这些方法的情况下包含Capybara::DSL
来实现此目的。如果您想查看https://github.com/jnicklas/capybara/blob/f83edc2a515a3a4fd80eef090734d14de76580d3/lib/capybara/dsl.rb
答案 1 :(得分:0)
假设您要包含以下模块:
module MailerMacros
def last_email
ActionMailer::Base.deliveries.last
end
def reset_email
ActionMailer::Base.deliveries = []
end
end
要包含它们,只需拨打config.include(MailerMacros)
,就像这样:
RSpec.configure do |config|
config.include(MailerMacros)
end
现在,您应该可以致电reset_email()
& last_email
代替MailerMacros::reset_email()
。