Ruby on rails 黄瓜/水豚/硒-制作饼干
对于我的测试用例,我尝试用以下方法设置cookies,但是没有设置Ruby on rails 黄瓜/水豚/硒-制作饼干,ruby-on-rails,testing,selenium,cucumber,capybara,Ruby On Rails,Testing,Selenium,Cucumber,Capybara,对于我的测试用例,我尝试用以下方法设置cookies,但是没有设置 1)browser = Capybara.current_session.driver.browser browser.manage.add_cookie :name => "xxx", :value => "cookie" 2)driver = Capybara.current_session.driver br = driver.browser.send(:bridge) br.addCookie(
1)browser = Capybara.current_session.driver.browser
browser.manage.add_cookie :name => "xxx", :value => "cookie"
2)driver = Capybara.current_session.driver
br = driver.browser.send(:bridge)
br.addCookie({
'name' => "xxx",
'domain' => "localhost",
'value' => "cookie",
'path' => '/',
'expires' => (Time.now + 100.years).to_i
})
如果我错过了什么,或者我必须以其他方式来做,请告诉我。水豚必须先访问您正在测试的网站。在设置任何cookie之前,这是必需的步骤 这项工作:
visit '/'
browser = Capybara.current_session.driver.browser
browser.manage.add_cookie name: "name", value: "value"
为了获得最佳性能,请仅运行此步骤一次,或者查看是否已设置cookie。下面是设置cookieconsent
cookie的实际代码,它绕过了cookie墙
browser = page.driver.browser
unless browser.manage.cookie_named("cookieconsent")
visit '/'
browser.manage.add_cookie name: "cookieconsent", value: "dismiss"
end
我正在使用
page.driver
获取驱动程序。这和水豚是一样的。当前会话。驱动程序第一种变体对我来说很好。请详细说明你所说的它不被设置的意思
对我有效,尽管我用page.driver.browser.manage.add_cookie()
来称呼它。它很大程度上取决于实际的驱动程序:请参阅。