2017-01-09 87 views
1

所以我試圖用selenium webdriver(2.53.1)創建一個腳本,它可以檢測並記錄顯示混合內容的網站。我做了一些快速環顧四周,發現Webdriver瀏覽器日誌記錄IE C#

Driver.Manage().Logs.GetLog(LogType.Browser);

,但你必須設置你的驅動程序有以下

ChromeOptions options = new ChromeOptions(); 
options.SetLoggingPreference(LogType.Browser, LogLevel.All); 
driver = new ChromeDriver(options); 

上面的代碼工作了Chrome,但我嘗試了我的IEDriver類似的設置

InternetExplorerOptions ieOptions = new InternetExplorerOptions(); 
ieOptions.SetLoggingPreference(LogType.Browser, LogLevel.All); 
ieOptions.EnsureCleanSession = true; 
ieOptions.RequireWindowFocus = true; 
ieOptions.IgnoreZoomLevel = true; 
Driver = new InternetExplorerDriver(ieOptions); 

我得到下面的異常

Test Name: Test 
Test FullName: sniper_regression.ExistingUser("ie").Test 
Test Source: c:\git\sniper-regression\sniper-regression\ExistingUser.cs : line 559 
Test Outcome: Failed 
Test Duration: 0:00:32.02 

Result Message: 
System.InvalidOperationException : Command not found: POST /session/51ed52d9-5842-4fe6-b854-e40edad1654f/log 
Command duration or timeout: 0 milliseconds 
Build info: version: '2.53.1', revision: 'a36b8b1', time: '2016-06-30 17:37:03' 
System info: host: 'CHI-GRID-NODE1', ip: '10.34.161.112', os.name: 'Windows Server 2008 R2', os.arch: 'amd64', os.version: '6.1', java.version: '1.8.0_111' 
Driver info: org.openqa.selenium.ie.InternetExplorerDriver 
Capabilities [{browserAttachTimeout=0, ie.enableFullPageScreenshot=true, enablePersistentHover=false, ie.forceCreateProcessApi=false, ie.forceShellWindowsApi=false, pageLoadStrategy=normal, ignoreZoomSetting=true, ie.fileUploadDialogTimeout=3000, version=11, platform=WINDOWS, nativeEvents=true, ie.ensureCleanSession=true, elementScrollBehavior=0, ie.browserCommandLineSwitches=, requireWindowFocus=true, browserName=internet explorer, initialBrowserUrl=http://localhost:43728/, javascriptEnabled=true, ignoreProtectedModeSettings=false, enableElementCacheCleanup=true, unexpectedAlertBehaviour=dismiss}] 
Session ID: 51ed52d9-5842-4fe6-b854-e40edad1654f 
Result StackTrace: 
at OpenQA.Selenium.Remote.RemoteWebDriver.UnpackAndThrowOnError(Response errorResponse) 
    at OpenQA.Selenium.Remote.RemoteWebDriver.Execute(String driverCommandToExecute, Dictionary`2 parameters) 
    at OpenQA.Selenium.Remote.RemoteWebDriver.InternalExecute(String driverCommandToExecute, Dictionary`2 parameters) 
    at OpenQA.Selenium.Remote.RemoteLogs.GetLog(String logKind) 
    at sniper_regression.ExistingUser.Test() in c:\git\sniper-regression\sniper-regression\ExistingUser.cs:line 559 

GetLog()是否需要爲IE設置不同的設置?任何意見將不勝感激,謝謝。

回答

0

IE驅動程序現在並沒有支持任何日誌API。部分原因是因爲IE驅動程序的開發者(無償,志願者)和WebDriver的創建者都認爲API的遠程端設計不佳,並且API未來可能會發生變化。此外,Internet Explorer瀏覽器本身不會以編程方式公開所有成功實現WebDriver日誌API所需的功能。但是,IE驅動程序在GitHub上可用,並且接受實現新功能的請求。

+0

感謝您的信息 –