私のコントローラーでは、次のコードを使用してリダイレクトが行われます。
セッションコントローラー
def create
render js: "window.location.pathname = #{home_path.to_json}"
end
しかし、カピバラを実行すると、送信後に home_page に到達しませんlogin
。
describe "Login Test", :js => true do
before do
@user = FactoryGirl.create(:user)
end
it 'should show the users first name' do
visit login_path
fill_in 'email', with: @user.email
fill_in 'password', with: @user.password
click_button "Log In"
save_and_open_page
assert page.has_content? @user.first_name
end
end
launchy gem
を追加して実行してトラブルシューティングを行うsave_and_open_page
と、次のテキストを含むページが表示されます。
window.location.pathname = "/"
カピバラは私に次のエラーを与えます:
Capybara::ElementNotFound: Unable to find xpath "/html"
カピバラはログインボタンから先に進まないようです。