[Selenium] 應對使用 Internet Explorer Driver 多個實例時的 cookie 共享問題

在使用 IEDriverServer 可執行文件時,從理論上來講是可經過它來建立並使用多個同時存在的 Internet Explorer Driver 實例的。但在實際使用過程當中,老是會碰到與 cookie 相關的問題、窗口焦點的問題、瀏覽器多實例等可能會面臨的問題。若是真想但願使用 Internet Explorer Driver 的多個實例而且儘量的避免前述可能遇到的問題,建議考慮 RemoteWebDriver 的方式,並經過多臺虛擬機來隔離干擾web

  有一種解決方案來應對使用 Internet Explorer Driver 多個實例時的 cookie 共享問題,即在Internet Explorer 啓動時先清理回話中的髒數據。可經過將 IE_ENSURE_CLEAN_SESION 參數傳遞給 Internet Explorer Driver 並在此模式下啓動 Internet Explorer Driver 來達到目的,代碼以下瀏覽器

pachage com.learningselenium.simplewebdriver;cookie

 

import org.openqa.selenium.*;spa

import org.openqa.selenium.ie.InternetExplorerDriver;rem

import org.openqa.selenium.remote.DesiredCapabilities;get

 

public class testInternetExplorerDriver{虛擬機

  public static void main(String[] args){selenium

    System.setProperty("webdriver.ie.driver", "D:\Driver\IEDriverServer_ Win32_ 2.37.0_latest\IEDriverServer.exe");it

    //設置DesiredCapabilities 的屬性包含IE_ENSURE_CLEAN_SESSION 以確保在瀏覽器實例啓動以前清理會話的髒數據class

    DesiredCapabilities capab = DesiredCapabilities.internetExplorer();

    capab.setCapability(InternetExplorerDriver.IE_ENSURE_CLEAN_SESSION, true); 

    Webdriver driver = new InternetExplorerDriver(capab);

 

    driver.get("http://www.baidu.com");

  }

}

相關文章
相關標籤/搜索