Il selenio fallisce con la versione cromata 32.0.1700.72 m
-
21-12-2019 - |
Domanda
Chrome Aggiornato automaticamente a "Versione 32.0.1700.72 m" per me stamattina (1/8/2014) E ora tutti i miei test automatizzati non funzionerà - falliscono con "System.InvalidoperationException: System.InvalidOperationException: errore sconosciuto: impossibile scoprire pagine aperte "quasi immediatamente.
Sono in esecuzione:
- .
- Windows 7 Enterprise (SP1) 64 bit
- Versione cromata 32.0.1700.72 m
- selenium chromedriver v2.2
- .net c #
Questa è l'uscita della console che ottengo:
Starting ChromeDriver (v2.2) on port 26819
[8668:8300:0108/162344:ERROR:chrome_views_delegate.cc(176)] NOT IMPLEMENTED
[8668:8300:0108/162344:ERROR:desktop_root_window_host_win.cc(746)] NOT IMPLEMENTED
[8668:8300:0108/162345:ERROR:desktop_root_window_host_win.cc(746)] NOT IMPLEMENTED
.
E questa è l'eccezione che ottengo:
Class Initialization method LeadManager.Web.UITest.Tests.ViewLeads.PriorityModeTests.ClassInitialize threw exception. System.InvalidOperationException: System.InvalidOperationException: unknown error: unable to discover open pages
(Driver info: chromedriver=2.2,platform=Windows NT 6.1 SP1 x86_64).
at OpenQA.Selenium.Remote.RemoteWebDriver.UnpackAndThrowOnError(Response errorResponse) in c:\Projects\WebDriver\trunk\dotnet\src\WebDriver\Remote\RemoteWebDriver.cs: line 1012
at OpenQA.Selenium.Remote.RemoteWebDriver.Execute(String driverCommandToExecute, Dictionary`2 parameters) in c:\Projects\WebDriver\trunk\dotnet\src\WebDriver\Remote\RemoteWebDriver.cs: line 846
at OpenQA.Selenium.Remote.RemoteWebDriver.StartSession(ICapabilities desiredCapabilities) in c:\Projects\WebDriver\trunk\dotnet\src\WebDriver\Remote\RemoteWebDriver.cs: line 814
at OpenQA.Selenium.Remote.RemoteWebDriver..ctor(ICommandExecutor commandExecutor, ICapabilities desiredCapabilities) in c:\Projects\WebDriver\trunk\dotnet\src\WebDriver\Remote\RemoteWebDriver.cs: line 89
at OpenQA.Selenium.Chrome.ChromeDriver..ctor(String chromeDriverDirectory, ChromeOptions options) in c:\Projects\WebDriver\trunk\dotnet\src\WebDriver\Chrome\ChromeDriver.cs: line 101
at UITestFramework.Providers.WebDriverProvider.CreateWebDriver(TestSettings settings) in WebDriverProvider.cs: line 73
at UITestFramework.Domain.TestSettings..ctor(BrowserType browserType, String baseUrl) in TestSettings.cs: line 69
at LeadManager.Web.UITest.Tests.SettingsFactory.GetSettings() in SettingsFactory.cs: line 33
at LeadManager.Web.UITest.Tests.ViewLeads.PriorityModeTests.ClassInitialize(TestContext context) in PriorityModeTests.cs: line 38
.
Quindi la chiamata del costruttore Chromedriver è in errore.
Qualcun altro visto la stessa questione?Grazie!
Soluzione
Questo è comune quando gli aggiornamenti Chrome / Firefox, ChromeDriver / SELENIUM hanno sempre bisogno di recuperare.
Tuttavia, l'ultimo cromedriver dovrebbe supportare già Chrome 32.La tua situazione è perché stai usando il modo esaurito Chromedriver 2.2.Si prega di utilizzare l'ultima versione 2.8, è possibile scaricarlo qui .
Altrimenti se è necessario tenere il Chromedriver 2.2, puoi anche downgrade il tuo cromato alla vecchia versione.
Altri suggerimenti
è appena arrivato lo stesso problema; E risolto aggiornando Chromedriver da 2,4 a 2.8
Per il nostro progetto, usiamo NPM.Ho risolto lo stesso problema rimuovendo il nodo_modules \ Chromedriver, quindi in esecuzione:
npm install chromedriver
. Gli aggiornamenti Chrome si verificano spesso e non tutti gli aggiornamenti funzionano necessariamente con una particolare versione di ChromeDriver.Prendi il controllo installando i modelli di amministrazione Google GeGedtor e attiva il criterio di Google Chrome Aggiorna.In questo modo puoi controllare e testare i tuoi aggiornamenti come richiesto per Chrome e ChromeDriver.Nota È meglio aggiornare Chrome il prima possibile.
Questo è l'approccio che ho preso da quando Chrome 27 e Chromedriver 2.1.Funziona bene e mantiene l'integrità dei tuoi test.