私の統合テストのためのIve setup capybara-webkitと非常に単純な問題に走っているIm。私のセッションは保存されていません。ユースケースはかなりシンプルですcapybara-webkit - レールセッションが保持されない/設定されない
1. Login
2. Go to a specific page
3. Check if it has the approp content
ステップ2では、私のアプリはテストケースをログインページに戻します。つまり、セッションが正しく設定されていません。
任意のヘルプは非常に
を高く評価され、私が代わりに@javascriptの@culerityを使用する場合は、このテストケースは、それほど問題はカピバラ-webkitのため
マイenv.rbカピバラ、WebKitの設定であるように思わ渡します 設定されているセッションのように見える:アップデート1
Spork.prefork do
require 'cucumber/rails'
require 'capybara'
require 'capybara/dsl'
require 'capybara/cucumber'
require 'capybara-webkit'
Capybara.run_server = false
Capybara.javascript_driver = :webkit
Capybara.default_selector = :css
# Capybara defaults to XPath selectors rather than Webrat's default of CSS3. In
# order to ease the transition to Capybara we set the default here. If you'd
# prefer to use XPath just remove this line and adjust any selectors in your
# steps to use the XPath syntax.
# Capybara.default_host = "127.0.0.1:3000"
Capybara.app_host = "http://localhost:3000"
end
は、次のようにサポートがあります。私は
puts(Capybara.current_session.driver.browser.get_cookies)
私の手順でセッションをダンプするには、次のコードを使用して、私はfollwoingてしまった - ので、[ "_jqt_session = BAh7CEkiD3Nlc3Npb25faWQGOgZFRiIlYmMwYzNjYjY0MGU3NTg0OWFlNTcwODhmM2I2MzE1YmRJIhBfY3NyZl90b2tlbgY7AEZJIjEwRzN6NG1NTzZqamNCNC9FdWZWeXBCMHdoeThueXBnaTJDcTVzbmJqQlBZPQY7AEZJIgpmbGFzaAY7AEZJQzolQWN0aW9uRGlzcGF0Y2g6OkZsYXNoOjpGbGFzaEhhc2h7BjoKYWxlcnRJIh9JbnZhbGlkIGVtYWlsIG9yIHBhc3N3b3JkLgY7AFQGOgpAdXNlZG86CFNldAY6CkBoYXNoewY7B1Q%3D--クッキーが設定されているが、バック
送信されていないように見えます3fbe1c2a77a433228e7b7f2d8c8f0aec3ad5fb5f; HttpOnly; domain = localhost; path =/"]
更新2: は間違ったツリーを吠えていました。データベースクリーナー戦略がトランザクションに設定されているため、テストケースで作成していたユーザーがレールアプリに表示されていないようです。その後、アプリ カピバラのWebKitのか、セレンドライバが別のスレッドで実行されている、より多くの明快さを追加するには https://groups.google.com/forum/#!msg/ruby-capybara/JI6JrirL9gM/R6YiXj4gi_UJ