1

我想在我的本地機器上使用下面的代碼啓動IE11瀏覽器。Selenium:意外的錯誤啓動IE。瀏覽器縮放級別設置爲122%。它應該設置爲100%

try{System.setProperty("webdriver.ie.driver", "src/main/resources/bin/IEDriverServer.exe"); 
      } 
      catch (Exception ex){ 
       Reporter.log("\nException in getting and setting the webdriver IE driver: "+ ex.getMessage() + ex.getClass(),true); 
       ex.printStackTrace(); 
      } 
      WebDriverManager.browser = browser; 
      driver = new EventFiringWebDriver(new InternetExplorerDriver()); 
      driver.manage().deleteAllCookies(); 
      driver.manage().window().maximize(); 

當我運行代碼時,它調用了瀏覽器http://localhost:22414/並且未能在那裏加載。連接下面的日誌。

org.openqa.selenium.remote.SessionNotFoundException: Unexpected error launching Internet Explorer. Browser zoom level was set to 125%. It should be set to 100% (WARNING: The server did not provide any stacktrace information) 
Command duration or timeout: 2.16 seconds 
Build info: version: '2.53.0', revision: '35ae25b1534ae328c771e0856c93e187490ca824', time: '2016-03-15 10:43:46' 
System info: host: 'AAAAAA', ip: '123.123.123.123', os.name: 'Windows 8.1', os.arch: 'amd64', os.version: '6.3', java.version: '1.7.0_79' 
Driver info: org.openqa.selenium.ie.InternetExplorerDriver 

我手動嘗試將瀏覽器縮放級別設置爲100%。即使這樣,錯誤也會出現。

回答

0

它可能會解決您的問題,但是這可能會給您帶來長期的麻煩。否則,您可能會遇到本地鼠標事件無法正確識別座標的問題。

解決此問題的最佳方法是實際轉到IE瀏覽器,並通過轉到設置 - >縮放將縮放級別設置爲默認值100%。

如果你在它,也確保:

  • 在IE 7或更高版本的Windows Vista或Windows 7,則必須爲每個區域設置 保護模式的設置是一樣的值。值 可以打開或關閉,只要每個區域的值相同即可。要設置 保護模式設置,請從 工具菜單中選擇「Internet選項...」,然後單擊安全選項卡。對於每個區域, 將作爲標籤爲「啓用保護 模式」的選項卡底部的複選框。
  • 此外,對於IE 10 及更高版本,必須禁用「增強保護模式」。此選項位於Internet選項對話框的「高級」選項卡中。瀏覽器縮放級別必須設置爲100%,以便可以將原生鼠標事件設置爲正確的座標。
  • 僅適用於IE 11,您需要在目標計算機上設置註冊表項,以便驅動程序可以維護與其創建的Internet Explorer的實例 的連接。對於32位Windows安裝, 你必須在註冊表編輯器中考查的重點是 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\Main\FeatureControl\FEATURE_BFCACHE

。對於64位Windows 安裝,密鑰是 HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Internet Explorer\Main\FeatureControl\FEATURE_BFCACHE。請注意, FEATURE_BFCACHE子項可能存在也可能不存在,如果它不存在,應該創建 。重要說明:在此密鑰內部,創建一個名爲iexplore.exe的值 DWORD,值爲0

您可以在IE驅動程序github project page上找到更多詳細信息。

2
DesiredCapabilities caps = DesiredCapabilities.internetExplorer(); 
caps.setCapability("ignoreZoomSetting", true); 
aDriver = new InternetExplorerDriver(caps); 

修復了這個問題。

相關問題