我希望在每个功能测试中调用以下功能,例如全局/公共功能(必须在所有功能测试中可用) :
由于大部分测试都需要先登录。
def feature_login(username, password)
scenario 'user sign in with valid data' do
within 'form' do
fill_in 'username', with: username
fill_in 'password', with: password
click_button 'continue'
end
end
end
我尝试将上述代码放在 test_helper.rb 中,但我得到了:
NoMethodError: undefined method `scenario'
似乎语法不同(与通常的功能测试不同)。
在我的登录功能测试中:
require "test_helper"
feature "Login" do
before do
visit root_path
end
scenario 'user sign in with valid data' do
feature_login('admin', 'my_pass') # so I can simply call like this.
page.current_path.must_equal '/en/home'
end
end
我想调用公共功能,例如feature_login(' admin',' my_pass')
我怎样才能完成那个?
请帮忙!
答案 0 :(得分:0)
解决:
哦!我想通了。
只需删除方案块。
在我的test / test_helper.rb。
中 def feature_login(username, password)
within 'form' do
fill_in 'username', with: username
fill_in 'password', with: password
click_button 'continue'
end
end