web-dev-qa-db-ja.com

Selenium ChromeDriverが空白のスクリーンショットを作成する

Jenkinsで撮影したスクリーンショットは、次の例のように空白または無効です。

Jenkins screenshot

たぶん誰かがそれでどんな種類の問題がありえるか知っていますか?ローカルですべてが正常に動作します

WebDriver.ChromeDriver.win32バージョン-2.30.0

Selenium.WebDriverバージョン-3.4.0

コード:

 try
        {
            var screenshotFileName = _filePath + ".png";
            ((ITakesScreenshot) Extensions.Driver).GetScreenshot().SaveAsFile(screenshotFileName, ScreenshotImageFormat.Png);
            Log.Error("Screenshot has been taken: " + screenshotFileName);
        }
        catch (Exception ex)
        {
            Log.Warning("TakeScreenshot failed: " + ex.Message);
        }
5
krapstuke

この問題は以前に発生したようです。これを確認してください: https://bugs.chromium.org/p/chromedriver/issues/detail?id=476

新しいchromedriver 2.30のバグの可能性があります。同じ問題があり、回避策はリモートデスクトップ接続でVMに接続することです。Seleniumをリモートで使用し、RDCを介してノードに誰も接続していない場合にのみ問題が発生します。

うまくいけば、次のchromedriverバージョンがこれを修正するでしょう。

2
Dagobah

これはChrome 59自体に問題があるようです:

https://bugs.chromium.org/p/chromedriver/issues/detail?id=1844&can=2&start=0&num=100&q=screenshots&colspec=ID%20Status%20Pri%20Owner%20Summary&groupby=&sort=-id =

Chromedriver 2.29に戻してみましたが、同じ結果が得られました(空白のスクリーンショット)。

3
paolodm

Jenkins-RobotFramework-Selenium2Library:生成された空白のスクリーンショット、Chromeをv.59からv.58にダウングレードした後、問題が解決され、スクリーンショットが期待どおりに生成されます。 Chromeの古いバージョン: http://www.slimjet.com/chrome/google-chrome-old-version.php

1
Jan Vrba

unset TZヘッドレスを実行する前にchromeここに空白のスクリーンショットがある問題を解決しました。

TZが(正しく)/usr/share/zoneinfo/Europe/Osloに設定されている場合、Chromeのjsコンソールにエラーがありました。

0
Alexander