Chromedriver es extremadamente lento en una máquina específica que usa Selenium Grid and.net


Sinopsis: Chromedriver funciona normalmente en una máquina, pero muy lentamente en otras dos máquinas idénticas.

Configuración:

  • Selenium Webdriver utiliza.Net para codificar y Selenium Grid para distribuir las pruebas. MSTest se está utilizando desde Visual Studio 2010 para ejecutar las pruebas.
  • Una máquina local de Windows 7 de 64 bits que actúa como el Concentrador
  • Tres máquinas remotas Win 7 de 32 bits (dos de ellas virtuales) en mi red local todos configurados como nodos. Aquí está el comando utilizado para iniciar los nodos en las máquinas remotas:

    Java-jar c:\seleniumWebDriver\seleniumGrid\selenium-server-standalone-2.31.0.jar-role node-hub http://XXX.XXX.XXX.XXX:4444/grid/register - browser "browserName=chrome",maxInstances=4-Dwebdriver.Chrome.conductor="C:\seleniumWebDriver\chromedriver.exe "

  • El controlador se inicia así desde el código:

    DesiredCapabilities capability = new Capacidades deseadas(); capacidad.setCapability (CapabilityType.Nombre del navegador, navegador); driver = nuevo RemoteWebDriver(nueva Uri (hubUrl), capacidad);

  • Las variables "browser" y "hubUrl" anteriores se pasan a través de una aplicación.archivo de configuración que se construye en tiempo de ejecución. Para este caso, browser = chrome.

Problema:

  • Cuando configuro machine 212 (que es una máquina virtual) como un nodo de Chrome usando el comando anterior, y luego inicie los scripts desde el hub, veo chrome iniciar en la máquina remota adecuada y ejecutar normalmente. Campos entre 5-10 comandos por segundo.

  • Cuando configuro la máquina 78 (máquina virtual) o la máquina 103 (máquina real) como un nodo de la misma manera, y luego inicie los scripts desde el concentrador, veo que el nodo inicia chrome correctamente. Sin embargo, se ejecuta muy lentamente, como 1 comando por segundo o menos.

Otra información: Como dije, en una máquina chrome funciona normalmente, pero en los otros, corre extremadamente lento. Firefox e IE, cuando se configuran como nodos, funcionan normalmente.

He comparado la máquina 212 (que funciona correctamente) con las otras máquinas y no puedo encontrar la diferencia. Todas las máquinas están usando ' selenium-server-standalone-2.31.0.jar ' y la misma versión del ChromeDriver.

No parece que las máquinas de nodos estén sobrecargadas. Además, es una diferencia muy consistente en el rendimiento que no parece estar relacionada con ninguna carga fluctuante en la red o en las máquinas.

Mi técnico de red ha verificado que todas estas máquinas están configuradas de manera idéntica en la red.

¿Alguien ha visto algo como esto antes?

EDITAR 1: He iniciado sesión hoy y las tres máquinas remotas están ejecutando Chrome lentamente. Antes uno de ellos era normal, pero ahora todos son lentos.

Author: Sky, 2013-04-24

3 answers

Me encontré con un problema similar donde chromedriver era lento en algunas máquinas y resultó ser un problema de proxy. Desactivación de "Detectar automáticamente la configuración" en Chrome: / / configuración > Cambiar la configuración de proxy > Configuración de LAN > hizo webdriver ejecutar comandos más rápido en Chrome para mí.

 31
Author: auto,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2013-05-01 13:56:36

Mi configuración de proxy no estaba utilizando la detección automática, pero encontré que lo siguiente me ayudó mucho. El tiempo que tardó en arrancar el conductor bajó de 43 segundos a 1 segundo

driver = new ChromeDriver(new ChromeOptions{Proxy = null}); 
 7
Author: Lamaan Ball,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2014-10-15 12:50:07

Bug link in chromedriver issues Este es un problema de larga duración que obtuvo la prioridad más baja. Pero a medida que más usuarios voten por él, tal vez alguien lo arregle. También podría ser releated a El análisis de la configuración del proxy no es compatible con el estándar que será corregido pronto.

 0
Author: SkorpEN,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2018-08-29 10:59:00