Estamos en los Mac, usando Chrome versión 70.0.3538.67 (Build oficial) (64 bits), ChromeDriver 2.43.600229. Chrome ventanas aparecen, pero se ha quedado atascado en la URL "datos :,". (Seguimiento de la pila a continuación)
Hemos encontrado una solución temporal usando Chrome versión 69 w / chromedriver 2.43, sin embargo, Chrome sigue insistiendo en la actualización de sí mismo.
Estamos funcionando con selenio en Java 3.4, HtmlUnit-controlador 2.27, TestNG 6.9.4, 4.7 JUnit con Maven-compilador-plugin 3.6.1, maven-segura-plugin 2.22.0.
org.openqa.selenium.WebDriverException: unknown error: failed to change window state to maximized, current state is normal
(Session info: chrome=70.0.3538.67)
(Driver info: chromedriver=2.43.600229 (3fae4d0cda5334b4f533bede5a4787f7b832d052),platform=Mac OS X 10.13.6 x86_64) (WARNING: The server did not provide any stacktrace information)
Command duration or timeout: 107 milliseconds
Build info: version: '3.4.0', revision: 'unknown', time: 'unknown'
System info: host: 'edited', ip: 'edited', os.name: 'Mac OS X', os.arch: 'x86_64', os.version: '10.13.6', java.version: '1.8.0_131'
Driver info: org.openqa.selenium.chrome.ChromeDriver
Capabilities [{mobileEmulationEnabled=false, hasTouchScreen=false, platform=MAC, acceptSslCerts=false, goog:chromeOptions={debuggerAddress=localhost:52400}, acceptInsecureCerts=false, webStorageEnabled=true, browserName=chrome, takesScreenshot=true, javascriptEnabled=true, setWindowRect=true, unexpectedAlertBehaviour=, applicationCacheEnabled=false, rotatable=false, networkConnectionEnabled=false, chrome={chromedriverVersion=2.43.600229 (3fae4d0cda5334b4f533bede5a4787f7b832d052), userDataDir=/var/folders/cd/rrq4w8sd3gz92ygpfx5_kwtw0000gp/T/.org.chromium.Chromium.DCVcH3}, takesHeapSnapshot=true, pageLoadStrategy=normal, databaseEnabled=false, handlesAlerts=true, version=70.0.3538.67, browserConnectionEnabled=false, nativeEvents=true, locationContextEnabled=true, cssSelectorsEnabled=true}]
Session ID: adb51408a3b04f990288d09604daa3a9
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
at org.openqa.selenium.remote.ErrorHandler.createThrowable(ErrorHandler.java:215)
at org.openqa.selenium.remote.ErrorHandler.throwIfResponseFailed(ErrorHandler.java:167)
at org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:671)
at org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:694)
at org.openqa.selenium.remote.RemoteWebDriver$RemoteWebDriverOptions$RemoteWindow.maximize(RemoteWebDriver.java:925)
at ufis.common.TestSuiteUtils.getDriver(TestSuiteUtils.java:59)
at ufis.test.cv.categories.research.independentresearch.IndependentResearchValidationTests.setUpClass(IndependentResearchValidationTests.java:45)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.testng.internal.MethodInvocationHelper.invokeMethod(MethodInvocationHelper.java:85)
at org.testng.internal.Invoker.invokeConfigurationMethod(Invoker.java:517)
at org.testng.internal.Invoker.invokeConfigurations(Invoker.java:213)
at org.testng.internal.Invoker.invokeConfigurations(Invoker.java:140)
at org.testng.internal.TestMethodWorker.invokeBeforeClassMethods(TestMethodWorker.java:170)
at org.testng.internal.TestMethodWorker.run(TestMethodWorker.java:104)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:748)
Este mensaje de error ...
org.openqa.selenium.WebDriverException: unknown error: failed to change window state to maximized, current state is normal
... implica que el ChromeDriver no fue capaz de maximizar el estado de la ventana del navegador Chrome cliente.
Buggy Mac OS X ChromeDriver reemplazado
Después de la versión de Chrome 70 fue puesto en libertad, algunos de ustedes han reportado que el uso de ChromeDriver para maximizar la ventana del navegador en Mac ya no funciona. ChromeDriver equipo han investigado este asunto, y ha creado una solución para ello. ChromeDriver construye con el arreglo ya están disponibles en los siguientes lugares:
- Si está utilizando la versión de Chrome 70 (la versión estable actual), por favor descarga la versión 70.0.3538.97 ChromeDriver de https://chromedriver.storage.googleapis.com/index.html?path=70.0.3538.97/
- Si está utilizando la versión de Chrome 71 (la versión beta actual), por favor descarga la versión 71.0.3578.33 ChromeDriver de https://chromedriver.storage.googleapis.com/index.html?path=71.0.3578.33/
Instantánea de ChromeDriver lanzamiento de correo electrónico
Sin embargo, su principal problema es la incompatibilidad entre la versión de los binarios que está utilizando la siguiente manera:
- Su versión de JDK es 1.8.0_131 que es bastante antigua .
- Actualizar JDK a los niveles recientes JDK 8u181 .
- Su selenio cliente de versión es 3.4.0 , que es casi un año más.
- Actualizar selenio a los niveles actuales Versión 3.14.0 .
Desde otro punto de vista, este tema parece un problema de regresión de Solicitud de funciones: ChromeDriver a la ventana de soporte de cambio de tamaño en una conexión remota .
ChromeDriver v2.43 en las notas de la versión se han mencionado explícitamente:
ChromeDriver a la ventana de soporte de cambio de tamaño en una conexión remota
Sin embargo, de acuerdo con las mejores prácticas para maximizar el navegador Chrome cliente se sugiere utilizar ChromeOptions
la clase de la siguiente manera:
System.setProperty("webdriver.chrome.driver", "C:\\your_directory\\chromedriver.exe");
ChromeOptions opt = new ChromeOptions();
opt.addArguments("disable-infobars");
opt.addArguments("--start-maximized");
opt.addArguments("--disable-extensions");
WebDriver driver = new ChromeDriver(opt);
driver.get("https://google.com");
Referencia
Se puede encontrar una discusión detallada en driver.manage (). Ventana (). Maximizar () problema con ChromeDriver 2,33
Actualización (20 Nov, 2018)
- ChromeDriver 2.44 ha sido liberado.
- ChromeDriver 2.44 admite las versiones de cromo 69 a 71
- Esta versión es similar a ChromeDriver 2,43 , pero con correcciones de errores adicionales.
- Un ChromeDriver que los apoyos cromo 72.x se espera que sea lanzado a principios del mes de diciembre.