Skip to main content

SnapshotAssertions

Playwright предоставляет методы для сравнения скриншотов страниц и элементов с ожидаемыми значениями, хранящимися в файлах.

expect(screenshot).toMatchSnapshot('landing-page.png');

Методы

toMatchSnapshot(name)

Добавлено в: v1.22 snapshotAssertions.toMatchSnapshot(name)
caution

Для сравнения скриншотов используйте expect(page).toHaveScreenshot() вместо этого.

Убеждается, что переданное значение, будь то [string] или [Buffer], соответствует ожидаемому снимку, хранящемуся в директории тестовых снимков.

Использование

// Базовое использование.
expect(await page.screenshot()).toMatchSnapshot('landing-page.png');

// Передайте параметры для настройки сравнения снимков и получения сгенерированного имени.
expect(await page.screenshot()).toMatchSnapshot('landing-page.png', {
maxDiffPixels: 27, // допускается не более 27 различных пикселей.
});

// Настройте порог совпадения изображений.
expect(await page.screenshot()).toMatchSnapshot('landing-page.png', { threshold: 0.3 });

// Привнесите структуру в ваши файлы снимков, передавая сегменты пути к файлу.
expect(await page.screenshot()).toMatchSnapshot(['landing', 'step2.png']);
expect(await page.screenshot()).toMatchSnapshot(['landing', 'step3.png']);

Узнайте больше о визуальных сравнениях.

Обратите внимание, что совпадение снимков работает только с тестовым раннером Playwright.

Аргументы

  • name [string] | [Array]<[string]>#

    Имя снимка.

  • options [Object] (опционально)

    • maxDiffPixelRatio [number] (опционально)#

      Допустимое соотношение пикселей, которые отличаются от общего количества пикселей, между 0 и 1. По умолчанию настраивается с помощью TestConfig.expect. По умолчанию не задано.

    • maxDiffPixels [number] (опционально)#

      Допустимое количество пикселей, которые могут отличаться. По умолчанию настраивается с помощью TestConfig.expect. По умолчанию не задано.

    • threshold [number] (опционально)#

      Допустимая воспринимаемая разница в цвете в цветовом пространстве YIQ между одним и тем же пикселем в сравниваемых изображениях, между нулем (строго) и единицей (свободно), по умолчанию настраивается с помощью TestConfig.expect. По умолчанию 0.2.


toMatchSnapshot(options)

Добавлено в: v1.22 snapshotAssertions.toMatchSnapshot(options)
caution

Для сравнения скриншотов используйте expect(page).toHaveScreenshot() вместо этого.

Убеждается, что переданное значение, будь то [string] или [Buffer], соответствует ожидаемому снимку, хранящемуся в директории тестовых снимков.

Использование

// Базовое использование, и имя файла выводится из имени теста.
expect(await page.screenshot()).toMatchSnapshot();

// Передайте параметры для настройки сравнения снимков и получения сгенерированного имени.
expect(await page.screenshot()).toMatchSnapshot({
maxDiffPixels: 27, // допускается не более 27 различных пикселей.
});

// Настройте порог совпадения изображений и имя снимка.
expect(await page.screenshot()).toMatchSnapshot({
name: 'landing-page.png',
threshold: 0.3,
});

Узнайте больше о визуальных сравнениях.

Обратите внимание, что совпадение снимков работает только с тестовым раннером Playwright.

Аргументы

  • options [Object] (опционально)
    • maxDiffPixelRatio [number] (опционально)#

      Допустимое соотношение пикселей, которые отличаются от общего количества пикселей, между 0 и 1. По умолчанию настраивается с помощью TestConfig.expect. По умолчанию не задано.

    • maxDiffPixels [number] (опционально)#

      Допустимое количество пикселей, которые могут отличаться. По умолчанию настраивается с помощью TestConfig.expect. По умолчанию не задано.

    • name [string] | [Array]<[string]> (опционально)#

      Имя снимка. Если не передано, используется имя теста и порядковые номера при многократных вызовах.

    • threshold [number] (опционально)#

      Допустимая воспринимаемая разница в цвете в цветовом пространстве YIQ между одним и тем же пикселем в сравниваемых изображениях, между нулем (строго) и единицей (свободно), по умолчанию настраивается с помощью TestConfig.expect. По умолчанию 0.2.