Si lo intento en mi máquina local (Macbook)

byte[] screen = driver.takeScreenshot();

Conductora:

public byte[] takeScreenshot() {
        return ((TakesScreenshot) driver).getScreenshotAs(OutputType.BYTES);
    }

Entiendo

CORRESPONDIENTE A LA COMPAÑÍA DE LA REPÚBLICA DE LA REPÚBLICA DE LA REPÚBLICA DE LA REPÚBLICA 1856119-104-112-3112194-3361471279-107-3665110-3364000073697868-826696-126

Pero si lo intento en Jenkins Windows esclava, obtengo

SCREENSHOT Bytes: -1198078711310261000013737268820040002-1058600028-82566600109573686584120-100-19-63491000-62-96-11791091063 960000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 ... 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000466116-201-91-24-43-101000073697868-826696-126

Que es imagen, pero en blanco (invisible).

Lo probé en Chromedriver, Geckodriver y el controlador IE también.

4
medy75 30 jun. 2017 a las 13:42

2 respuestas

La mejor respuesta

Encontré casi el mismo problema y lo resolví actualizando mi Chrome desde la versión 59.0.3071.115 a Google Chrome beta v60.0.3112.40 .

Mi problema es que la captura de pantalla de Selenium funciona bien localmente, pero solo toma la captura de pantalla blank en Jenkins desde la semana pasada. Esta es la captura de pantalla antes de actualizar a la versión Chrome Beta.

Luego descubrí que Google lanzó una nueva versión de Chrome el 27 de junio. Y mi Chrome se actualizó automáticamente el 30 de junio. Esa es la razón.

Intenté actualizar el controlador cromado para 2.28 a 2.3, volviendo a Chrome a la versión 64_59.0.3071.86, pero nunca funcionó. Entonces encontré enlaces a continuación es realmente útil.

Chrome 59 escritorio remoto chromedriver.exe guarda blanco / en blanco

Selenium ChromeDriver realiza capturas de pantalla en blanco

4
He Xiang 24 jul. 2017 a las 02:52

Esto sucedió en una máquina Windows para mí. En las notas de la actualización 59 de Chrome, uno de los aspectos más destacados es:

Capturas de pantalla de la página completa: tome una captura de pantalla de toda la página, desde la parte superior de la ventana gráfica hasta la parte inferior.

Supongo que algo en esa actualización rompió las capturas de pantalla con Jenkins. Descubrí que volver a la versión anterior de Chrome me solucionó el problema. (Busque la versión de compilación aquí y luego descargue esa versión aquí).

También he enviado un ticket aquí a google para esto. problema ya que no pude encontrar otros. Tal vez si otras personas lo comentan, obtendrá algo de vapor.

1
HotDogWater 11 jul. 2017 a las 15:52