簡體   English   中英

selenium webdriver如何為每次運行維護單獨的會話?

[英]How selenium webdriver is maintaining separate session for each run?

例如在gmail登錄中,當我們考慮登錄測試時,當我們第一次手動執行登錄頁面時,從下次開始我們將直接進入收件箱頁面。

如果您嘗試在webdriver中執行相同的操作(運行登錄測試兩次),在所有這些嘗試中,我們將獲得登錄頁面,因為我們之前沒有從此計算機登錄。 在維護有關cookie或會話的會話的幕后發生了什么?

以下是selenium docs中添加或刪除Cookie的說明和代碼段:

在我們離開這些后續步驟之前,您可能有興趣了解如何使用cookie。 首先,您需要在cookie有效的域上。 如果您在開始與網站交互之前嘗試預設Cookie並且您的主頁很大/需要一段時間來加載替代方法是在網站上找到一個較小的網頁,通常404頁面很小( http://示例。 com / some404page

// Go to the correct domain
driver.get("http://www.example.com");

// Now set the cookie. This one's valid for the entire domain
Cookie cookie = new Cookie("key", "value");
driver.manage().addCookie(cookie);

// And now output all the available cookies for the current URL
Set<Cookie> allCookies = driver.manage().getCookies();
for (Cookie loadedCookie : allCookies) {
    System.out.println(String.format("%s -> %s", loadedCookie.getName(), loadedCookie.getValue()));
}

// You can delete cookies in 3 ways
// By name
driver.manage().deleteCookieNamed("CookieName");
// By Cookie
driver.manage().deleteCookie(loadedCookie);
// Or all of them
driver.manage().deleteAllCookies();

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM