使用硒从 html 5 本地存储中读取

use*_*435 4 javascript c# selenium

我在 c# 中使用 selenium web 驱动程序。当我使用 JavaScript 方法写入本地存储时,它工作正常(我可以使用 inspect 看到 html 页面中的值),但是如果我尝试从本地存储读取我刚写的内容,它会返回 Null。谢谢你的帮助 。

写作(作品):

IJavaScriptExecutor js = (IJavaScriptExecutor)driver;      
js.ExecuteScript("localStorage.setItem('key','value');");  
Run Code Online (Sandbox Code Playgroud)

阅读(返回 Null ):

Object Value= js.ExecuteScript("localStorage.getItem('key')");
Run Code Online (Sandbox Code Playgroud)

Erk*_* M. 6

首先,您应该返回值,其次您应该将返回值转换为已知类型。

value = (String) js.executeScript("return localStorage.getItem('key')");
Run Code Online (Sandbox Code Playgroud)

  • 目前,`getLocalStorage()` 仅适用于 Chrome 驱动程序(和 Android 驱动程序,据我所知) (2认同)