Webratを使用すると何がテストできるの?

  • アクセスが成功しているかどうか
  • ページ上に"Sign up"リンクが存在しているかどうか
  • "Sign up"リンクにポイントされたURLへのアクセスが成功するかどうか
  • Sign upページに"Email"フィールドが存在しているかどうか
  • Sign upページに"Free acount"と呼ばれるオプションがあるかどうか
  • ページ上に"Submit"と呼ばれるボタンがあるかどうか
  • Sign upページを登録したときにe-mailとfree accountの情報をリンク先のページに送れているかどうか

なるほど。ブラウザ内の動作をテストできるイメージですかね。

注意したほうがよいテスト

  • modelを変更した際に影響が出るカラム(nameやIDなど)
  • URLリンク
  • formの送り先URL
  • ログインリクエスト時のHTTPメソッド
  • Merbを利用する際はsession情報を失わないようにenvironments/test.rbに以下を設定しましょう。
Merb::Config.use do |c|
  c[:session_store] = 'memory'
end