Me gustaría un conjunto de pruebas web automatizadas basado en Selenium RC para tomar capturas de pantalla de páginas cuando se encuentran algunos errores. El conjunto de pruebas forma parte del proceso de integración continua y se ejecuta técnicamente mediante CruiseControl ejecutándose como un servicio de Windows.Selenium se ejecuta como un servicio de Windows para tomar capturas de pantalla en los errores
Se llama al método selenium.captureScreenshot()
para activar la captura de pantalla real. He registrado un JUnit RunListener
para llamarlo en cualquier falla de prueba.
El problema es que las capturas de pantalla son solo archivos en blanco - archivos PNG totalmente negros. Las dimensiones son 1440x900.
Al ejecutar manualmente las mismas pruebas desde Eclipse, las capturas de pantalla son correctas (aunque son capturas de pantalla de todo el escritorio, no de la ventana del navegador, pero esa es una historia diferente y un problema menor). Así que supongo que la causa del problema es que el Selenium se ejecuta como un servicio de Windows.
¿Cómo puedo tener las capturas de pantalla de las páginas tomadas cuando ocurren excepciones en las pruebas de Selenium?
El software utilizado:
- Windows 2003 Server
- selenio 1.0.1
Gracias. Voy a intentar esto. Pero dudo que pueda ayudar. He visto este sitio antes. Y en realidad la implementación de Selenium del comando 'captureScreenshot' parece usar exactamente la misma técnica: http://tinyurl.com/Selenium1260106 –
@GrzegorzOledzki - Sospeché que el Selenio podría estar tomando el mismo enfoque. Por favor, háganos saber si funciona y buena suerte. – Steven
Confirmado. El comportamiento es exactamente el mismo. El robot generó una imagen completamente en blanco (negro) con exactamente el mismo tamaño. Entonces, no hay progreso ... –