我尝试将以下标志添加到
LocalStorage
中,但它不起作用。
localStorage.setItem('ClientRedirectEnabled', 'true');
下面是我的代码
public void FlagIntroduce() throws InterruptedException {
Thread.sleep(20000);
LocalStorage localStorage = new LocalStorage() {
@Override
public String getItem(String s) {
return null;
}
@Override
public Set<String> keySet() {
return null;
}
@Override
public void setItem(String s, String s1) {
setItem("ClientRedirectEnabled", "true");
}
@Override
public String removeItem(String s) {
return null;
}
@Override
public void clear() {
}
@Override
public int size() {
return 0;
}
};
}
当在 chromedriver 中开始测试时,我将打开控制台和应用程序书签。在本地存储中,我没有在 setItem
中设置的键和值在此处查看示例LocalStorageTest
@Test
public void testLocalStorageSetAndGetItem() {
ChromeDriver driver = new ChromeDriver();
driver.get("https://www.testurl");
LocalStorage local = ((WebStorage) driver).getLocalStorage();
local.setItem("FOO", "BAR");
local.clear();
}
在 Java 中,您可以使用
JavascriptExecutor
的实例来为您完成这项工作。
JavascriptExecutor js = (JavascriptExecutor) driver;
js.executeScript("localStorage.setItem(arguments[0],arguments[1])",key,value);