ことはじめ
LPのチェックのためにVisualRegressionTestを導入したい!
でも表示しただけでスクリーンショット取ると画像が読み込まれていない!(Lozad.js使ってる)
画像を全部表示してスクリーンショットを取ろう!
test("スクリーンショット",async({ page, browserName})=> {
test.setTimeout(120000); // timeoutの時間を変更
await page.setViewportSize({ // 画面サイズを変更
width: 1920,
height: 1080,
});
await page.goto(jsonData.url,{
waitUntil:"domcontentloaded",
});
//imgタグの入っていないpictureタグを列挙し、それぞれの位置までスクロール
const pics = await page.$$('picture:not(:has(img))');
for(const pic of pics){
await pic.scrollIntoViewIfNeeded();
}
//スクリーンショット取得(ぶらうざべつにh)
await page.screenshot({
path: `tests/screenshot/actual_${browserName}.png`,
fullPage: true,
});
});