テストケースの作成にはカピバラを使用しています。私のコードフローは次のとおりです
1) ユーザーがログインすると、性別選択ページにリダイレクトされます (性別はラジオ ボタンです)。
2) 性別を選択して [続行] をクリックすると、ユーザーはホームページにリダイレクトされます。
3) 性別を選択せずに「続行」をクリックすると、ユーザーは同じページにリダイレクトされます。
Railsでカピバラを使用して、これのテストケースを書いています。
私のテストケースは次のとおりです
before :each do
@user = User.create(:login => "test", :password => "123456", :email => "test@email.com", :status => true)
visit '/users/sign_in'
fill_in "user[email]", :with => @user.login
fill_in "user[password]", :with => @user.password
click_button "LOGIN"
choose("gender")
click_button "PROCEED"
end
after :each do
visit "/logout"
end
it "signs me in to D360" do
current_path.should eq('/')
end
2 番目のフォームが送信される場所に puts ステートメントを追加しましたが、2 回印刷されていることがわかりました。リファラーを確認したところ、ログイン ページと性別選択ページの 2 つの異なるページからリクエストが送信されたようです。なぜそのように機能しているのか理解できません。私が間違っているカピバラでの連続したフォーム送信のための何かがあるはずです、私は理解できません。