Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 在启动selenium脚本之前,如何在浏览器的localStorage中使用ruby设置项_Javascript_Ruby_Html_Selenium Webdriver - Fatal编程技术网

Javascript 在启动selenium脚本之前,如何在浏览器的localStorage中使用ruby设置项

Javascript 在启动selenium脚本之前,如何在浏览器的localStorage中使用ruby设置项,javascript,ruby,html,selenium-webdriver,Javascript,Ruby,Html,Selenium Webdriver,在启动selenium脚本之前,我正在尝试在浏览器的localStorage中设置项 我试图用这个命令清除本地存储 driver.get('javascript:localStorage.clear();') 它适用于firefox浏览器。然后我试着设置一个项目 driver.get('javascript:"window.localStorage.setItem('key','value');", item, value):' 命令已执行,但值未更新 我这样做是因为在本地存储中设置了一个值

在启动selenium脚本之前,我正在尝试在浏览器的localStorage中设置项

我试图用这个命令清除本地存储

driver.get('javascript:localStorage.clear();')
它适用于firefox浏览器。然后我试着设置一个项目

driver.get('javascript:"window.localStorage.setItem('key','value');", item, value):'
命令已执行,但值未更新

我这样做是因为在本地存储中设置了一个值之后,我可以在窗口中看到一个需要测试的选项卡

我正在使用Selenium webdriver和ruby。

您是否尝试过:

driver.execute_script("<javascript command>")
driver.execute\u脚本(“”)

而不是使用
驱动程序。获取
?这将实际执行命令。您还可以使用开发工具的JavaScript控制台测试要运行的命令。

我找到了另一种通过Selenium webdriver设置和获取本地存储的方法。 安装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中是否有项。我相信是的


ref:

我尝试了这段代码,但它仍然无法设置资源驱动程序。执行_脚本(“window.localStorage.setItem('discovery_tab','true')”您是否尝试在JS开发人员控制台中运行它?您需要确保您在一个页面上,以便本地存储能够正常工作。谢谢@David Ambler这段代码工作了驱动程序。执行_脚本(“window.localStorage.setItem('item','value'))太棒了!很高兴您对它进行了排序。