Así que cuando corro mis pruebas individualmente, funcionan muy bien. Sin embargo, cuando ejecuto mi característica (pruebas múltiples) mi código está fallando.
Esto se debe a que cuando existe el carpincho, no todas las ventanas se cierran y, por lo tanto, mis controladores de selenio no saben qué ventana usar.¿Puedes cerrar todas las ventanas abiertas en capibara?
Básicamente, lo que está sucediendo es que mi prueba está abriendo varias ventanas. Esto está sucediendo porque mis pruebas están haciendo clic en enlaces que abren nuevas ventanas y verifican el contenido en las nuevas ventanas. Aunque digo page.quit
al final de cada prueba, esta función no cierra todas las ventanas abiertas (cierra la ventana activa pero no la ventana original). Cuando se ejecuta la segunda prueba, utiliza la ventana de creación original, pero cuando abre la nueva ventana emergente, utiliza la ventana incorrecta.
¿Cómo puedo asegurarme de que se utiliza un nuevo navegador durante cada prueba y que todas las ventanas de la prueba anterior están cerradas?
Actualmente estoy usando page.reset!
y page.quit
.
No estoy seguro, pero ¿puedo decir session.quit
para cerrar todas las ventanas abiertas del navegador?
Esto no funcionará, la función 'salir' no existe. Lo mismo con Close. – Jason
Esto no funciona – Jason
Esto funciona al azar sin embargo.Esta vez me dio 'Failure/Error: no se pudo encontrar la línea coincidente desde el backtrace Selenium :: WebDriver :: Error :: NoSuchWindowError: ejecución de getUrl failed; No se pudo encontrar la ventana' – Ava