How to clear cookies in Capybara tests (both Selenium and Rack::Test)

Posted . Visible to the public.

Capybara drivers will usually delete all cookies after each scenario. If you need to lose cookie data in the middle of a scenario, you can do this:

browser = Capybara.current_session.driver.browser
if browser.respond_to?(:clear_cookies)
  # Rack::MockSession
  browser.clear_cookies
elsif browser.respond_to?(:manage) and browser.manage.respond_to?(:delete_all_cookies)
  # Selenium::WebDriver
  browser.manage.delete_all_cookies
else
  raise "Don't know how to clear cookies. Weird driver?"
end
Arne Hartherz
Last edit
Keywords
forget, firefox, chrome, webdriver
License
Source code in this card is licensed under the MIT License.
Posted by Arne Hartherz to makandra dev (2013-05-15 15:32)