2013年09月26日

rails capybara: visit の後のステータスコードをチェックする方法

capybaravisit した後のステータスコードのチェックをするにはどうすればよいか。上の本によると、response.status.should be(200) と書けばよさそうな感じで説明してある。

しかし、そんなことやっても

Failure/Error: response.status.should be(200)
NoMethodError:
undefined method `status' for nil:NilClass

と言われて終わるのである。たとえばこれを get 'path' のように書くと、response は nil ではなくなる。そして、

Failure/Error: response.status.should be(200)
expected # => 200
got # => 302

と出力される。302は確かにエラーではない・・・が、これだとリクエストをしているだけで、find, fill_in などでページ内のオブジェクトを操作することができない。

そこで visit とやって、page.status_code.should be(200) とやってみる。成功したのでこれが正解っぽい。save_and_open_page でページも確かめている。


posted by けんじ at 19:11 | Comment(0) | パソコンいろいろ
- 広告 -
この記事へのコメント
コメントを書く
お名前: [必須入力]

ホームページアドレス:

コメント: [必須入力]

※半角英数字のみのコメントは投稿できません。
×

この広告は1年以上新しい記事の投稿がないブログに表示されております。