Capybara の click_button メソッドのドキュメントを読んでみる

ドキュメント

f:id:matt-note:20181019191758p:plain

参考:Method: Capybara::Node::Actions#click_button — Documentation for jnicklas/capybara (master)

 

上記のように、クリックするボタンについては、id や値、タイトルから探すようになっているとのこと。

画像のリンクについては、alt属性を指定して、ボタンを見つけることができるとのこと。

 

使ってみる

とりあえず、テストで以下のように書いたとき、

f:id:matt-note:20181019192915p:plain

 

以下のように、value="Log in" となっているボタンをクリックする。

f:id:matt-note:20181019192926p:plain

f:id:matt-note:20181019192947p:plain

 

Capybara をRSpec と一緒に使う場合

ログインボタンを押す場合は、以下のような流れになる。visit メソッドでパスに GET リスエストを送って、「Sign in」リンクをクリックして、入力欄に Email と password の値を fill_in して、click_button メソッドを使って、フォームの値を送信してログインする。

ログインしたあとの動作のテストについては、expect { } の中でテストしていく流れになる。

f:id:matt-note:20181019194931p:plain