webdriverioを使用してフルページのスクリーンショットを撮ろうとしています。私は最良の方法は、webdrivercssを使用してwebdriverioを強化し、何らかの理由でwebdrivercssが自動的にページ全体をスクリーンショットすることです。webdriverio - フルページのスクリーンショットを取る
問題は、webdrivercssが機能していないことです。 Webdriverio> 3.0とまだ互換性がないためだと思います。
これを動作させる方法はありますか、それとも私が使用できる別のソリューションですか?ここで私のコードは何もコールバックで未定義の値を生成しています。
// initialise WebdriverCSS for `client` instance
require('webdrivercss').init(driver, {
// example options
screenshotRoot: '../../screenshots',
failedComparisonsRoot: '../../screenshots/diffs',
misMatchTolerance: 0.05
});
//....
//driver gets initialized and url opened
//
driver.webdrivercss('page', {
name: 'body',
elem: 'body'
}, function(err,res) {
//here the values of err and res are always undefined
})
.saveScreenshot('../../screenshots/webdrivercsstest.png');
//the screenshot works but it's not full page
!!!!!!!!!!!! !!!!!!!!!!!!!!!! EDIT これはChromiumの既知のバグで、修正されていない可能性があります。以下のリンクの下のコメントをご覧ください。
コメント: "CrossBrowserTesting.comのスクリーンショットシステムの作成者として、私たちがフルページスクリーンショットをブラウザ間で一貫して確実に取得できる唯一の方法は、スクロール、キャプチャ、および追加することです画像。
セレンから完全なスクリーンショットを返すFFやIEの場合でも、ページがスクロールされるまで表示されない項目があります。 msn.comは、ページがスクロールされるまで折りたたみの下にビデオ画像を表示しません:http://media.crossbrowsertesting.com/users/197/screenshots/full/z5dfc08780d196eba5d5.png
セレンのスクリーンショットの信頼性が信頼できるものであれば、それゆえ、私は時々、何らかの進歩があったかどうかをチェックする。
しかし、今W3Cはwebdriverをスクリーンショットが唯一のビューポートでなければならないことを指定します。https://w3c.github.io/webdriver/webdriver-spec.html#screenshots
ChromeDriverチームは、おそらくこの問題を解決しません」
LINK: https://bugs.chromium.org/p/chromedriver/issues/detail?id=294
スクリーンショットを取るために
使用
.scroll('#myElement')
をやったときにフルページscreenhotを見ることができるものですか? Chrome 50.0.2661.86(64ビット)を使用しています。私はいくつかのブラウザがフルスクリーンショットを生成し、いくつかのスクリーンショットは生成しないと聞いてきました。 – mags@magsはい、私は上記のようにクロムでフルページのスクリーンショットを取得します。 [here](http://stackoverflow.com/questions/37010103/webdriverio-browsermob/37011601#37011601)は、必要に応じてクロムの使用方法です。 – user1207289
@mags私のクロムのバージョン - 50.0.2661.86(64ビット) – user1207289