1
我在編寫基於Java的selenium-webdriver測試。我正在測試的應用程序在storageSession中設置了某些值,例如sessionStorage.setItem("demo", "test")
,我怎麼能在我的測試中檢查並斷言存儲的變量demo
的價值使用Selenium Webdriver測試sessionStorage
我在編寫基於Java的selenium-webdriver測試。我正在測試的應用程序在storageSession中設置了某些值,例如sessionStorage.setItem("demo", "test")
,我怎麼能在我的測試中檢查並斷言存儲的變量demo
的價值使用Selenium Webdriver測試sessionStorage
發現了一個偉大的工具類https://gist.github.com/roydekleijn/5073579
import org.openqa.selenium.JavascriptExecutor;
import org.openqa.selenium.WebDriver;
public class LocalStorage {
private JavascriptExecutor js;
public LocalStorage(WebDriver webDriver) {
this.js = (JavascriptExecutor) webDriver;
}
public void removeItemFromLocalStorage(String item) {
js.executeScript(String.format(
"window.localStorage.removeItem('%s');", item));
}
public boolean isItemPresentInLocalStorage(String item) {
return !(js.executeScript(String.format(
"return window.localStorage.getItem('%s');", item)) == null);
}
public String getItemFromLocalStorage(String key) {
return (String) js.executeScript(String.format(
"return window.localStorage.getItem('%s');", key));
}
public String getKeyFromLocalStorage(int key) {
return (String) js.executeScript(String.format(
"return window.localStorage.key('%s');", key));
}
public Long getLocalStorageLength() {
return (Long) js.executeScript("return window.localStorage.length;");
}
public void setItemInLocalStorage(String item, String value) {
js.executeScript(String.format(
"window.localStorage.setItem('%s','%s');", item, value));
}
public void clearLocalStorage() {
js.executeScript(String.format("window.localStorage.clear();"));
}
}
感謝羅伊
Python請。我期待訪問會話存儲並返回一些文件。幫幫我! – 2016-06-03 19:43:08
那是存儲在cookie?如果是的話,那麼你可以得到該cookie,然後從cookie中,你可以得到該變量 – 2014-12-19 11:55:54
謝謝,但它不在cookie內,而是存儲在瀏覽器的sessionStorage – learnAndImprove 2014-12-19 11:59:14