我在启动selenium脚本之前尝试在浏览器的localStorage中设置setItem
我尝试使用此命令清除本地存储
driver.get('javascript:localStorage.clear();')
它适用于firefox浏览器。然后设置我试过的项目
driver.get('javascript:"window.localStorage.setItem('key','value');", item, value):'
执行命令但不更新值。
我这样做是因为在本地存储中设置一个值后,我能够在窗口中看到一个需要测试的选项卡。
我正在使用Selenium webdriver和ruby。
答案 0 :(得分:2)
你试过了吗?
driver.execute_script("<javascript command>")
而不是使用driver.get
?那将实际执行命令。您还可以使用Developer Tools的JavaScript控制台测试要运行的命令。
答案 1 :(得分:0)
我找到另一种通过Selenium webdriver设置和获取localStorage的方法。 安装Watir后,您可以在irb模式下键入代码:
require 'watir'
browser = Watir::Browser.new # Use webdriver to open chrome.
browser.goto 'http://someurl_that_local_storage_accessiable'
local_storage = browser.driver.local_storage
local_storage['key'] = 'value'
在irb中使用此代码后,如果localStorage中有项目,您可以检查浏览器。我确定是。