运行测试时,我试图访问WebStorage,我使用ChromeDriver在本地运行测试,并使用RemoteWebDriver在管道中远程运行测试。
使用RemoteWebDriver时我无法访问WebStorage
var dateString = date.toISOString();
var newDateString = dateString.substr(0, dateString.length -1);
我得到:
org.openqa.selenium.remote.RemoteWebDriver无法转换为org.openqa.selenium.remote.html5.RemoteWebStorage
任何建议都将受到欢迎,谢谢。
答案 0 :(得分:3)
您将必须使用下面的技巧来访问RemoteWebDriver中的本地存储。使用RemoteWebdriver selenium-java-4.0.0-alpha-2,Chrome版本76.0.3809.100和ChromeDriver 76.0.3809.68在chrome浏览器上对其进行了测试。对我来说很好。
导入以下课程
import org.openqa.selenium.remote.RemoteExecuteMethod;
import org.openqa.selenium.remote.html5.RemoteWebStorage;
import org.openqa.selenium.html5.LocalStorage;
使用以下代码访问本地存储
RemoteExecuteMethod executeMethod = new RemoteExecuteMethod((RemoteWebDriver) driver);
RemoteWebStorage webStorage = new RemoteWebStorage(executeMethod);
LocalStorage storage = webStorage.getLocalStorage();
storage.setItem("test", "test");
答案 1 :(得分:0)
您忘记了一次导入import org.openqa.selenium.remote.RemoteWebDriver;