Tengo 3 archivos de especificaciones para probar el llenado de formularios y la carga de fotos usando cypress.
El formulario es: https://demoqa.com/automation-practice-form
El problema es cuando se completa una prueba de formulario, el navegador se cierra y otras 2 pruebas fallan porque no llamo a la URL abierta en cada caso de prueba.
Si ejecuto pruebas en GUI, todo está bien. El navegador no se cierra después de la primera prueba, pero cuando ejecuto
npx cypress run --headed --browser chrome
desde la línea de comandos, se produce un problema.
Quiero ejecutar pruebas desde la línea de comandos para que el navegador no se cierre hasta que finalicen todas las pruebas.
Tengo exactamente el mismo problema y después de horas de investigación encontré una solución que resuelve esto. No es una solución real, pero resuelve su problema y el mío. Aquí están los pasos que hice:
Cree un cuarto archivo de especificaciones, llámelo main.spec.ts, dentro de este archivo haga una importación para los 3 archivos de especificaciones que tiene:
import './fillform.spec.js' import './uploadphoto.spec.js' import './result.spec.js'En el archivo cypress.json, agregue la siguiente entrada para permitir ejecutar solo el archivo de especificaciones principal:
"testFiles": ["main.spec.js"],Ahora cypress run funcionará exactamente como cypress open y todas las especificaciones se ejecutarán sin cerrar el navegador en el medio:
npx cypress run --headed --browser chrome