cuando ejecuta pruebas en Cypress, lanzamos un navegador para usted. Esto nos permite:
- Crear un entorno de pruebas limpio y prístino.
- acceda a las API del navegador con privilegios para la automatización.,
navegadores
cuando Cypress se ejecuta inicialmente desde el corredor de prueba, puede elegir ejecutar Cypress en un número seleccionado de navegadores, incluidos:
- Canary
- Chrome
- Chromium
- Edge
- Edge Beta
- Edge Canary
- Edge Dev
- Electron
- Firefox
- /li>
- Firefox Developer Edition
- Firefox Nightly
Cypress detecta automáticamente los navegadores disponibles en su sistema operativo., Puede cambiar el navegador en el corredor de pruebas utilizando el menú desplegable en la esquina superior derecha:
descargar la versión específica de Chrome
el navegador Chrome es evergreen, lo que significa que se actualizará automáticamente, lo que a veces causa un cambio radical en sus pruebas automatizadas. Nosotros albergamos chromium.cypress.io con enlaces para descargar una versión específica de Chrome (dev, Canary y stable) para cada plataforma.
Electron Browser
además de los navegadores que se encuentran en su sistema, notará que Electron es un navegador disponible., El navegador Electron es una versión de Chromium que viene con Electron.
el navegador Electron tiene la ventaja de ser horneado en Cypress y no necesita ser instalado por separado.
de forma predeterminada, al ejecutar cypress run
desde la CLI, lanzaremos Electron sin cabeza.
también puede lanzar Electron headed:
cypress run --headed
porque Electron es el navegador predeterminado, normalmente se ejecuta en CI. Si está viendo fallas en CI, para depurarlas fácilmente, es posible que desee ejecutar localmente con la opción --headed
.,
navegadores Chrome
todos los navegadores con sabor a Chrome * se detectarán y serán compatibles con Chrome 64.
Puede iniciar Chrome de la siguiente manera:
cypress run --browser chrome
para usar este comando en CI, debe instalar el navegador que desee, o usar una de nuestras imágenes de docker.
por defecto, lanzaremos Chrome en modo encabezado. Para ejecutar Chrome sin cabeza, puede pasar el argumento --headless
a cypress run
.,
también puede iniciar Cromo:
cypress run --browser chromium
O Chrome Canary:
cypress run --browser chrome:canary
O Microsoft Borde (basado en Chromium):
cypress run --browser edge
O Microsoft Borde de Canarias (basado en Chromium):
cypress run --browser edge:canary
Firefox
Firefox-de la familia de los navegadores son compatibles Cypress.,
Puede iniciar Firefox de la siguiente manera:
cypress run --browser firefox
o Firefox Developer/Nightly Edition:
cypress run --browser firefox:devcypress run --browser firefox:nightly
para usar este comando en CI, debe instalar estos otros navegadores o usar una de nuestras imágenes de docker.
por defecto, lanzaremos Firefox en modo encabezado. Para ejecutar Firefox sin cabeza, puede pasar el argumento --headless
a cypress run
.,
Lanzamiento por una ruta
Puede iniciar cualquier navegador compatible especificando una ruta al binario:
cypress run --browser /usr/bin/chromium
cypress open --browser /usr/bin/chromium
Cypress detectará automáticamente el tipo de navegador suministrado y lo iniciará por usted.
consulte la Guía de la línea de comandos para obtener más información sobre--browser
argumentsHaving trouble launching a browser? Consulte nuestra guía de solución de problemas
personalizar los navegadores disponibles
a veces es posible que desee modificar la lista de navegadores encontrados antes de ejecutar las pruebas.,
por ejemplo, es posible que tu aplicación web solo esté diseñada para funcionar en un navegador Chrome, y no dentro del navegador Electron.
en el archivo plugins, puede filtrar la lista de navegadores pasados dentro del objeto config
y devolver la lista de navegadores que desea que estén disponibles para su selección durante cypress open
.
Cuando abre el test Runner en un proyecto que utiliza las modificaciones anteriores en su archivo de plugins, solo los navegadores Chrome que se encuentran en el sistema se mostrarán en la lista de navegadores disponibles.,
Si usted devuelve una lista vacía de navegadores o
browsers: null
, el valor predeterminado de la lista se restaurará automáticamente.
Si ha instalado un navegador basado en Chromium como Brave, Vivaldi puede agregarlos a la lista de navegadores devueltos. Aquí hay un archivo de complementos que inserta un navegador Brave local en la lista devuelta.
Una vez seleccionado, el navegador Brave se detecta utilizando el mismo enfoque que cualquier otro navegador de la familia chromium
.,
si modifica la lista de navegadores, puede ver la configuración resuelta en la pestaña Configuración del ejecutor de pruebas.
navegadores no compatibles
muchos navegadores como Safari e Internet Explorer no son compatibles actualmente. El soporte para más navegadores está en nuestra hoja de ruta. Puede leer una explicación sobre nuestra futura hoja de Ruta del navegador cruzado aquí.
entorno del navegador
Cypress inicia el navegador de una manera que es diferente de un entorno de navegador normal. Pero se lanza de una manera que creemos que hace que las pruebas sean más confiables y accesibles.,
lanzamiento de navegadores
Cuando Cypress vaya a iniciar su navegador, le dará la oportunidad de modificar los argumentos utilizados para iniciar el navegador.
esto le permite hacer cosas como:
- cargar su propia extensión
- Activar o desactivar características experimentales
esta parte de la API se documenta aquí.
Cypress Profile
Cypress genera su propio perfil aislado aparte de su perfil de navegador normal., Esto significa que cosas como history
entradas cookies
y 3rd party extensions
de su sesión de navegación no afectará a sus pruebas en Cypress.
espera, necesito mis extensiones de desarrollador!
eso no es problema-tienes que reinstalarlos una vez en el navegador Cypress lanzado. Continuaremos usando este perfil de pruebas de Cypress en lanzamientos posteriores para que se conserve toda su configuración.,
barreras deshabilitadas
Cypress deshabilita automáticamente ciertas funcionalidades en el navegador lanzado por Cypress que tienden a interferir con las pruebas automatizadas.
El Cypress lanzó el navegador automáticamente:
- ignora los errores de Certificado.
- Permite ventanas emergentes bloqueadas.
- deshabilita ‘guardar contraseñas’.
- deshabilita ‘Autocompletar formularios y contraseñas’.
- deshabilita la solicitud de convertirse en su navegador principal.
- deshabilita las notificaciones de detección de dispositivos.
- deshabilita las traducciones de idiomas.,
- deshabilita la restauración de sesiones.
- deshabilita el tráfico de red en segundo plano.
- deshabilita la limitación de fondo y renderizador.
- deshabilita los avisos que solicitan permiso para usar dispositivos como cámaras o micrófonos
- deshabilita los requisitos de gestos del usuario para la reproducción automática de videos.
puede ver todos los conmutadores de línea de comandos de chrome predeterminados que enviamos aquí.
icono del navegador
es posible que note que si ya tiene el navegador abierto verá dos de los mismos iconos del navegador en su dock.,
entendemos que cuando Cypress se ejecuta en su propio perfil puede ser difícil distinguir la diferencia entre su navegador normal y Cypress.
por esta razón, puede encontrar útil descargar y usar las versiones del canal de lanzamiento de un navegador (Dev, Canary, etc.). Estos navegadores tienen iconos diferentes del navegador estable estándar, lo que los hace más distinguibles. También puede utilizar el navegador Electron incluido, que no tiene un icono de dock.,
además, en los navegadores basados en Chrome, hemos hecho que el navegador generado por Cypress se vea diferente de las sesiones regulares. Verás un tema más oscuro alrededor del cromo del navegador. Siempre podrás distinguirlos visualmente.
solución de problemas
¿tiene problemas al iniciar los navegadores instalados? Obtenga más información sobre la solución de problemas con el lanzamiento del navegador