下面列出了怎么用org.openqa.selenium.html5.LocalStorage的API类实例代码及写法,或者点击链接到github查看源代码。
private void saveLocalStorage(String account)
{
WebDriver driver = util.getEngine().getDriver();
if(driver instanceof WebStorage)
{
WebStorage webStorage = (WebStorage) driver;
LocalStorage localStorage = webStorage.getLocalStorage();
Properties pro = new Properties();
for(String key : localStorage.keySet())
{
pro.setProperty(key, localStorage.getItem(key));
}
PathUtil.proStore(pro, "localStorage." + account);
}
}
@Test
public void providesRemoteAccessToWebStorage() {
DesiredCapabilities caps = new DesiredCapabilities();
caps.setCapability(CapabilityType.SUPPORTS_WEB_STORAGE, true);
CapableDriver driver = mock(CapableDriver.class);
when(driver.getCapabilities()).thenReturn(caps);
WebStorage storage = Utils.getWebStorage(driver);
LocalStorage localStorage = storage.getLocalStorage();
SessionStorage sessionStorage = storage.getSessionStorage();
localStorage.setItem("foo", "bar");
sessionStorage.setItem("bim", "baz");
verify(driver).execute(DriverCommand.SET_LOCAL_STORAGE_ITEM, ImmutableMap.of(
"key", "foo", "value", "bar"));
verify(driver).execute(DriverCommand.SET_SESSION_STORAGE_ITEM, ImmutableMap.of(
"key", "bim", "value", "baz"));
}
@Override
public LocalStorage getLocalStorage()
{
RemoteWebDriver driver = webDriverProvider.getUnwrapped(RemoteWebDriver.class);
if (!webDriverManager.isTypeAnyOf(WebDriverType.SAFARI) && isWebStorageEnabled(driver))
{
return new RemoteLocalStorage(new RemoteExecuteMethod(driver));
}
return new JavascriptLocalStorage(javascriptActions);
}
private void testGetLocalStorage(Boolean safariDriver, Boolean webStorageEnabled,
Class<? extends LocalStorage> expectedStorageClass)
{
RemoteWebDriver driver = mock(RemoteWebDriver.class);
Mockito.lenient().when(webDriverProvider.getUnwrapped(RemoteWebDriver.class)).thenReturn(driver);
Mockito.lenient().when(webDriverManager.isTypeAnyOf(WebDriverType.SAFARI)).thenReturn(safariDriver);
Capabilities capabilities = mock(Capabilities.class);
Mockito.lenient().when(driver.getCapabilities()).thenReturn(capabilities);
Mockito.lenient().when(capabilities.getCapability(CapabilityType.SUPPORTS_WEB_STORAGE))
.thenReturn(webStorageEnabled);
assertTrue(expectedStorageClass.isInstance(localStorageProvider.getLocalStorage()));
}
private boolean loadLocalStorage(String accountNameValue, Map<String, String> customMap)
{
WebDriver webDriver = util.getEngine().getDriver();
if(webDriver instanceof WebStorage)
{
WebStorage webStorage = (WebStorage) webDriver;
LocalStorage localStorage = webStorage.getLocalStorage();
Properties pro = new Properties();
if(PathUtil.proLoad(pro, "localStorage." + accountNameValue))
{
if(pro.isEmpty())
{
return false;
}
pro.putAll(customMap);
pro.stringPropertyNames().parallelStream().forEach((key) -> {
localStorage.setItem(key, pro.getProperty(key));
});
return true;
}
}
return false;
}
private LocalStorage getLocalStorage()
{
return localStorageProvider.getLocalStorage();
}
@Override
public LocalStorage getLocalStorage() {
return ((WebStorage)getDriver()).getLocalStorage();
}
@Override
public LocalStorage getLocalStorage() {
return webStorage.getLocalStorage();
}
@Override
public LocalStorage getLocalStorage() {
return webStorage.getLocalStorage();
}
@Override
public LocalStorage getLocalStorage() {
return webStorage.getLocalStorage();
}
@Override
public LocalStorage getLocalStorage() {
return new RemoteLocalStorage(executeMethod);
}
@Override
public LocalStorage getLocalStorage() {
return webStorage.getLocalStorage();
}
@Override
public LocalStorage getLocalStorage() {
return webStorage.getLocalStorage();
}
LocalStorage getLocalStorage();