如果我试用我的本地机器(Macbook)
byte[] screen = driver.takeScreenshot();
驱动:
public byte[] takeScreenshot() {
return ((TakesScreenshot) driver).getScreenshotAs(OutputType.BYTES);
}
我得到了
SCREENSHOT BYTES: -119807871131026100001373726882008520054886000-7418-1053100122110567678073676732801141111021051081010072 ... 66-51-53-81-71-37-7131115-33-25-66-501218163264-12801248163264-12801248163264-12801248163264-12801291446-13-31-13-36105-1856119-104-112-3112194-3361471279-107- 3665110-3364000073697868-826696-126
但如果我在Jenkins Windows奴隶上尝试,我会得到
SCREENSHOT BYTES: -1198078711310261000013737268820040002-1058600028-82566600109573686584120-100-19-63491000-62-96-11791091063 960000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 ... 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000466116-201-91-24-43-101000073697868-826696-126
是图像,但是空白(不可见)。
我也在Chromedriver,Geckodriver和IE驱动程序中尝试过它。
答案 0 :(得分:3)
我遇到了几乎相同的问题,并通过更新我的Chrome从版本59.0.3071.115到 Google Chrome beta v60.0.3112.40 解决了这个问题。
我的问题是Selenium截图在本地运行良好,但自上周以来只在Jenkins上截取 空白 屏幕截图。这是screenshot before my updating to Chrome Beta version。
然后我发现Google于6月27日推出了新版Chrome。我的Chrome会在6月30日自动更新。这就是全部原因。
我尝试将chromedriver升级到2.28到2.3,将Chrome回滚到版本64_59.0.3071.86,但它从未奏效。然后我发现下面的链接非常有帮助。
※Chrome 59 remote desktop chromedriver.exe saves white/blank
答案 1 :(得分:1)