使用Capybara删除浏览器Cookie

时间:2013-06-04 10:09:44

标签: selenium webdriver capybara

当我更改代码以最大化浏览器窗口时,使用capybara删除浏览器cookie无法正常工作。 最初我使用以下代码。如果删除cookie

,它可以正常工作
 browser = Capybara.current_session.driver.browser
  Capybara.default_wait_time = 12
  browser.manage.delete_all_cookies

根据我的要求,我需要最大化浏览器窗口。所以我更改了上面的代码,并取代browser.manage.delete_all_cookies

的错误
     browser = Capybara.current_session.driver.browser.manage.window.resize_to(1600, 800)
    Capybara.default_wait_time = 12
    browser.manage.delete_all_cookies

'startTesting':Undefined method 'manage' for nilClass(noMethodError)

1 个答案:

答案 0 :(得分:8)

问题是browser被设置为resize_to方法返回的值,该方法基于错误消息nil

您应该调整窗口大小,类似于删除Cookie的方式:

browser = Capybara.current_session.driver.browser
browser.manage.window.resize_to(1600, 800)
Capybara.default_wait_time = 12
browser.manage.delete_all_cookies

请注意,调整大小是在它自己的行上(即不是设置browser变量的行的一部分)。