Popup de cookies y cómo manejarlos en Playwright

Javier Villalta
Jun 20, 2024

En multitud de páginas sobre las que hagamos automation testing, tendrán el famoso y 'amigable' popup de aceptar cookies.

Aplicando POM a nuestro código, no nos será difícil localizar el botón de 'Aceptar cookies' y seguir con los test automatizados que teníamos previstos... Pero, muchas veces tendremos el siguiente error al correr nuestros tests:

Esto es debido a que gracias a nuestro 'querido' popup, la página pierde el contexto actual y se interpreta como que se ha cerrado, y por lo tanto, no se puede continuar con la ejecución de los tests.

Esto lo solucionamos en dos pasos:

1.- En el POM que tengamos creado. Ponemos el atributo 'page' como PUBLICO:

2.- En la página donde tengamos los tests, pasar SIEMPRE el parámetro '{page}'

El código de la función de aceptar cookies en el POM sería por ejemplo el siguiente:

async accepXCookies(){

await expect(this.XCookiesButton).toBeVisible();

return this.XCookiesButton.click();

}

Por último, recordad que según la calidad de la conexión que tengamos...el 'bendito' popup tardará más o menos tiempo en aparecer... Podemos jugar con {timeout: x} pero en mi opinión, no es lo mas recomendable.

Espero que os haya servido de ayuda amigos!!

Saludos!!!!