Как получить многоэкранное изображение страницы для визуального тестирования с использованием jest-image-snapshot?

Мы используем jest-image-snapshot для визуального тестирования нашей целевой страницы длиной в несколько экранов.

Размер области просмотра 800x1200 предназначен для захвата двух экранов, но он получает только растянутое изображение первого экрана.

Можно ли протестировать всю длину страницы одновременно?

import React from 'react';
import { toMatchImageSnapshot } from 'jest-image-snapshot';
import puppeteer from 'puppeteer';

expect.extend({ toMatchImageSnapshot });

describe('landing page', () => {
  let browser;
  beforeAll(async () => {
    browser = await puppeteer.launch();
  });
  it('renders correctly', async () => {
    const page = await browser.newPage();
    await page.goto('http://localhost:3000/');
    await page.setViewport({
      width: 800,
      height: 1200
    });
    const image = await page.screenshot({
      fullPage: true
    });
    expect(image).toMatchImageSnapshot();
  });
  afterAll(async () => {
    await browser.close();
  });
});

0 ответов

Другие вопросы по тегам