ChromeDriver-Desactivar extensiones de modo de desarrollador pop-up en Selenium WebDriver automatización


Tengo el siguiente problema: Cuando estoy ejecutando mis pruebas de automatización, sigo recibiendo la siguiente alerta "Desactivar la extensión del modo de desarrollador" en Chrome.

introduzca la descripción de la imagen aquí

¿Hay alguna forma de eliminar/deshabilitar esto?. Es un bloqueador para mí, ya que me está haciendo fallar algunas pruebas.

Gracias de antemano

Author: Ripon Al Wasim, 2014-04-15

11 answers

¿Ha intentado deshabilitar las extensiones de desarrollador con la línea de comandos param?

Pruebe con el siguiente código java de Selenium WebDriver:

System.setProperty("webdriver.chrome.driver", "D:\\chromedriver.exe");
ChromeOptions options = new ChromeOptions();
options.addArguments("--disable-extensions");
driver = new ChromeDriver(options);
 55
Author: Mauricio,
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
2016-08-22 05:12:00

No puedo deshabilitar las extensiones porque estoy desarrollando y probando una.

Lo que estoy haciendo para descartar esta ventana emergente es lo siguiente:

  1. Cargo chrome con mi extensión usando Selenium.
  2. Entonces inmediatamente creo una nueva ventana (a través del método SendKeys(Control-N)). Esto hace que aparezca la ventana emergente "Deshabilitar extensiones del modo de desarrollador" después de 3 segundos en la nueva ventana.
  3. No puedo decir programáticamente cuando aparece (no se muestra en las capturas de pantalla), así que en su lugar simplemente espere 4 segundos.
  4. Luego cierro la pestaña a través de driver.Close(); (que también cierra esta nueva ventana). Chrome lo toma como "cancelar", descartando la ventana emergente, dejando la ventana original y la pestaña.

Encuentro esto necesario porque la ventana emergente interfiere con la interacción normal del navegador selenium, como SendKeys, que estoy usando para cambiar pestañas y ventanas.

 8
Author: Erik Eidt,
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
2016-11-30 17:57:33

Esto se ha solucionado automáticamente con una combinación de ChromeDriver.exe V2.23 + Chrome 53.0 .

Para entender qué versión de Chrome funcionará con qué controlador, podemos usar el siguiente documento bien detallado: https://sites.google.com/a/chromium.org/chromedriver/downloads

Disfrute de las Pruebas Automatizadas!!

 3
Author: RArora,
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-27 10:53:45

He trabajado alrededor de este problema mediante el uso de AutoIt.

Primero, necesitará crear el script.

Closechromewarning. au3:

WinWaitActive("[CLASS:Chrome_WidgetWin_1]")
Send("{ESC}")

El script necesita ser compilado a un .exe, luego coloque el .exe en la ruta para que pueda ser ejecutado.

Función que cierra la advertencia, usando la sintaxis de c#:

public void CloseChromeDialog()
{
    System.Threading.Thread.Sleep(5000);
    Process.Start(@".\closechromewarning.exe");
}

Sleep(4000) funcionó, pero lo subí a Sleep(5000) solo para estar seguro.

Llamando a CloseChromeDialog():

if(browser == chrome) //pseudo code
    CloseChromeDialog();
 2
Author: Richard,
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-04-21 19:04:09

Resuelto en chrome 54 y chromedriver 2.25

 2
Author: CRISTIANO BARBOSA,
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
2016-11-13 18:57:25

Yo también me enfrenté a este problema. La solución es, si está utilizando maven, simplemente agregue:

-Dchrome.switches=--disable-extensions

Desactivará todas las extensiones y no se enfrentará a este problema.

 0
Author: sateesh,
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
2016-07-23 13:13:00

Estoy usando selenium Webdriver 2.53 y la versión de Chrome 56.0.2924.87 y el controlador de Chrome.exe que estoy usando es 2.27. con esta combinación está trabajando con el

System.setProperty("webdriver.chrome.driver", "./utilities/chromedriver.exe");          
ChromeOptions options = new ChromeOptions();        
options.addArguments("--disable-extensions");           
DesiredCapabilities caps = new DesiredCapabilities().chrome();
caps.setCapability(ChromeOptions.CAPABILITY, options);
driver = new ChromeDriver(caps);
 0
Author: Sudhanva Patil,
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
2017-02-25 19:02:41

Intente agregar setProperty encima de ChromeDriver instance

System.setProperty("webdriver.chrome.driver","C:/[PATH]/chromedriver.exe");
driver = new ChromeDriver(capabilities);
 0
Author: Jess,
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
2017-05-28 05:56:16

He estado enfrentando el mismo problema durante mucho tiempo. La solución resulta ser muy simple. Solo tienes que descargar la actualización " chromedriver.exe" y péguelo reemplazándolo con el existente ubicado en "C:\Program Files\SeleniumBasic". Espero que sirva.

 0
Author: SIM,
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
2017-06-19 17:19:08

A partir de Chromedriver v2. 33, la forma correcta de evitar este mensaje es pasar load-extension al argumento excludeSwitches de la chromeOptions objeto. El siguiente código Java debería hacer el truco, aunque no lo he probado, ya que estoy ejecutando Python:

ChromeOptions options = new ChromeOptions();
options.setExperimentalOption("excludeSwitches", Collections.singletonList("load-extension"));

Como otros han señalado, el culpable es probablemente la extensión de automatización de Chrome, que se carga automáticamente por Chromedriver cuando se lanza Chrome.

Chromedriver v2. 33 introdujo el nuevo cambio a evitar que las extensiones se carguen:

Se actualiza la capacidad excludeSwitches que ahora permite excluir el conmutador exclude load-extension.

Sospecho que esta solución no requiere que deshabilite todas las extensiones. Todavía debería ser capaz de cargar manualmente otros.

 0
Author: Peter P,
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-07-26 16:39:59

Esto se debe a que una de sus extensiones se está ejecutando en modo desarrollador. Revisa tu lista de extensiones y deshabilita las extensiones una por una hasta que encuentres al(los) culpable (s).

 -1
Author: Mike B,
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-04-15 15:22:34