From a614266675d761963c5c5f12290bb39e0fcadfc1 Mon Sep 17 00:00:00 2001 From: David Hunt Date: Sun, 15 Dec 2024 22:13:47 -0800 Subject: [PATCH] feat: add screenshot options to playwright world config --- .changeset/perfect-geese-burn.md | 5 +++ ...owser and steps_Setting a clip area_03.png | Bin 0 -> 7197 bytes ...and steps_Setting a screenshot mask_03.png | Bin 0 -> 168229 bytes packages/playwright/src/PlaywrightWorld.ts | 18 ++++++++-- packages/playwright/src/actions.steps.ts | 12 +++---- packages/playwright/src/outcomes.steps.ts | 8 ++--- packages/playwright/src/snapshotMatcher.ts | 31 +++++++++++++++--- packages/playwright/tests/playwright.feature | 25 ++++++++++++++ packages/playwright/tests/playwright.steps.ts | 15 +++++---- 9 files changed, 89 insertions(+), 25 deletions(-) create mode 100644 .changeset/perfect-geese-burn.md create mode 100644 packages/playwright/screenshots/Feature: Basic tests of Playwright browser and steps_Setting a clip area_03.png create mode 100644 packages/playwright/screenshots/Feature: Basic tests of Playwright browser and steps_Setting a screenshot mask_03.png diff --git a/.changeset/perfect-geese-burn.md b/.changeset/perfect-geese-burn.md new file mode 100644 index 0000000..9bb9caa --- /dev/null +++ b/.changeset/perfect-geese-burn.md @@ -0,0 +1,5 @@ +--- +"@quickpickle/playwright": minor +--- + +added screenshot options to playwright world config diff --git a/packages/playwright/screenshots/Feature: Basic tests of Playwright browser and steps_Setting a clip area_03.png b/packages/playwright/screenshots/Feature: Basic tests of Playwright browser and steps_Setting a clip area_03.png new file mode 100644 index 0000000000000000000000000000000000000000..05358a83841d8d59e0630255a488137c3f2665e5 GIT binary patch literal 7197 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 literal 0 HcmV?d00001 diff --git a/packages/playwright/screenshots/Feature: Basic tests of Playwright browser and steps_Setting a screenshot mask_03.png b/packages/playwright/screenshots/Feature: Basic tests of Playwright browser and steps_Setting a screenshot mask_03.png new file mode 100644 index 0000000000000000000000000000000000000000..279df1765b2a28e3264bfcc79706ddab588fda13 GIT binary patch literal 168229 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 z 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 z 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 literal 0 HcmV?d00001 diff --git a/packages/playwright/src/PlaywrightWorld.ts b/packages/playwright/src/PlaywrightWorld.ts index 78357a7..4091fed 100644 --- a/packages/playwright/src/PlaywrightWorld.ts +++ b/packages/playwright/src/PlaywrightWorld.ts @@ -8,6 +8,7 @@ import { InfoConstructor } from 'quickpickle/dist/world'; import path from 'node:path' import url from 'node:url' import { expect } from 'playwright/test'; +import { ScreenshotSetting } from './snapshotMatcher'; export const projectRoot = path.resolve(path.dirname(url.fileURLToPath(import.meta.url)).replace(/node_modules.+/, ''), '..') const browsers = { chromium, firefox, webkit } @@ -16,6 +17,7 @@ export type PlaywrightWorldConfigSetting = Partial<{ host: string, // default host, including protocol (default: http://localhost) port: number, // port to which the browser should connect (default: undefined) screenshotDir: string, // directory in which to save screenshots (default: "screenshots") + screenshotOptions?: ScreenshotSetting // options for the default screenshot comparisons nojsTags: string|string[] // tags for scenarios to run without javascript (default: @nojs, @noscript) showBrowserTags: string|string[] // tags for scenarios to run with browser visible (default: @browser, @show-browser, @showbrowser) slowMoTags: string|string[] // tags for scenarios to be run with slow motion enabled (default: @slowmo) @@ -97,7 +99,7 @@ export class PlaywrightWorld extends QuickPickleWorld { } setConfig(worldConfig:PlaywrightWorldConfigSetting) { - let newConfig = defaultsDeep(worldConfig || {}, defaultPlaywrightWorldConfig ) + let newConfig = defaultsDeep(worldConfig || {}, defaultPlaywrightWorldConfig) newConfig.nojsTags = normalizeTags(newConfig.nojsTags) newConfig.showBrowserTags = normalizeTags(newConfig.showBrowserTags) newConfig.slowMoTags = normalizeTags(newConfig.slowMoTags) @@ -108,7 +110,6 @@ export class PlaywrightWorld extends QuickPickleWorld { } this.info.config.worldConfig = newConfig } - async setViewportSize(size?:string) { if (size) { size = size.replace(/^['"]/, '').replace(/['"]$/, '') @@ -133,6 +134,7 @@ export class PlaywrightWorld extends QuickPickleWorld { } async reset(conf?:PlaywrightWorldConfigSetting) { + let url = this.page.url() || this.baseUrl.toString() await this.page?.close() await this.browserContext?.close() if (conf) { @@ -144,6 +146,7 @@ export class PlaywrightWorld extends QuickPickleWorld { serviceWorkers: 'block' }) this.page = await this.browserContext.newPage() + await this.page.goto(url, { timeout: this.worldConfig.stepTimeout }) } async close() { @@ -318,6 +321,17 @@ export class PlaywrightWorld extends QuickPickleWorld { } } + async screenshot(opts?:{ + name?:string + locator?:Locator + }) { + let explodedTags = this.info.explodedIdx ? `_(${this.info.tags.join(',')})` : '' + let path = opts?.name ? this.sanitizeFilepath(`${this.projectRoot}/${this.worldConfig.screenshotDir}/${opts.name}${explodedTags}.png`) : this.fullScreenshotPath + let locator = opts?.locator ?? this.page + console.log('FWAH') + return await locator.screenshot({ path, ...this.worldConfig.screenshotOpts }) + } + } function getDimensions(size:string) { diff --git a/packages/playwright/src/actions.steps.ts b/packages/playwright/src/actions.steps.ts index 1aab7ea..618de06 100644 --- a/packages/playwright/src/actions.steps.ts +++ b/packages/playwright/src/actions.steps.ts @@ -155,22 +155,18 @@ When('I scroll down/up/left/right {int}(px)( pixels)', async function (world:Pla // Screenshots Then('(I )take (a )screenshot', async function (world:PlaywrightWorld) { - await world.page.screenshot({ path:world.fullScreenshotPath }) + await world.screenshot() }) Then('(I )take (a )screenshot named {string}', async function (world:PlaywrightWorld, name:string) { - let explodedTags = world.info.explodedIdx ? `_(${world.info.tags.join(',')})` : '' - let path = world.sanitizeFilepath(`${world.projectRoot}/${world.worldConfig.screenshotDir}/${name}${explodedTags}.png`) - await world.page.screenshot({ path }) + await world.screenshot({ name }) }) Then('(I )take (a )screenshot of the {string} {word}', async function (world:PlaywrightWorld, identifier:string, role:string) { let locator = world.getLocator(world.page, identifier, role) - await locator.screenshot({ path:world.fullScreenshotPath }) + await world.screenshot({ locator }) }) Then('(I )take (a )screenshot of the {string} {word} named {string}', async function (world:PlaywrightWorld, identifier:string, role:string, name:string) { let locator = world.getLocator(world.page, identifier, role) - let explodedTags = world.info.explodedIdx ? `_(${world.info.tags.join(',')})` : '' - let path = world.sanitizeFilepath(`${world.projectRoot}/${world.worldConfig.screenshotDir}/${name}${explodedTags}.png`) - await locator.screenshot({ path }) + await world.screenshot({ locator, name }) }) // ================ diff --git a/packages/playwright/src/outcomes.steps.ts b/packages/playwright/src/outcomes.steps.ts index 5f63bc4..58ed017 100644 --- a/packages/playwright/src/outcomes.steps.ts +++ b/packages/playwright/src/outcomes.steps.ts @@ -190,20 +190,20 @@ Then('the meta( )tag {string} should not/NOT contain/include/be/equal {string}', // Visual regression testing Then('(the )screenshot should match', async function (world:PlaywrightWorld) { - await expect(world.page).toMatchScreenshot(world.screenshotPath) + await expect(world.page).toMatchScreenshot(world.screenshotPath, world.worldConfig.screenshotOptions) }) Then('(the )screenshot {string} should match', async function (world:PlaywrightWorld, name:string) { let explodedTags = world.info.explodedIdx ? `_(${world.info.tags.join(',')})` : '' - await expect(world.page).toMatchScreenshot(`${world.worldConfig.screenshotDir}/${name}${explodedTags}.png`) + await expect(world.page).toMatchScreenshot(`${world.worldConfig.screenshotDir}/${name}${explodedTags}.png`, world.worldConfig.screenshotOptions) }) Then('(the )screenshot of the {string} {word} should match', async function (world:PlaywrightWorld, identifier, role) { let locator = await world.getLocator(world.page, identifier, role) - await expect(locator).toMatchScreenshot(world.screenshotPath) + await expect(locator).toMatchScreenshot(world.screenshotPath, world.worldConfig.screenshotOptions) }) Then('(the )screenshot {string} of the {string} {word} should match', async function (world:PlaywrightWorld, name, identifier, role) { let locator = await world.getLocator(world.page, identifier, role) let explodedTags = world.info.explodedIdx ? `_(${world.info.tags.join(',')})` : '' - await expect(locator).toMatchScreenshot(`${world.worldConfig.screenshotDir}/${name}${explodedTags}.png`) + await expect(locator).toMatchScreenshot(`${world.worldConfig.screenshotDir}/${name}${explodedTags}.png`, world.worldConfig.screenshotOptions) }) // Browser context diff --git a/packages/playwright/src/snapshotMatcher.ts b/packages/playwright/src/snapshotMatcher.ts index 57a15f1..39edebd 100644 --- a/packages/playwright/src/snapshotMatcher.ts +++ b/packages/playwright/src/snapshotMatcher.ts @@ -5,6 +5,7 @@ import { promises as fs } from 'node:fs'; import path from 'node:path'; import pixelmatch, { PixelmatchOptions } from 'pixelmatch'; import { defaultsDeep } from 'lodash-es'; +import type { PageScreenshotOptions } from 'playwright-core'; export interface ToHaveScreenshotOptions extends PixelmatchOptions { @@ -19,14 +20,29 @@ export interface ToHaveScreenshotOptions extends PixelmatchOptions { height: number; }; fullPage?: boolean; - mask?: Array; + mask?: Array; maskColor?: string; omitBackground?: boolean; timeout?: number; }; -const defaultOptions = { +export interface ScreenshotSetting extends PixelmatchOptions { + maxDiffPercentage?: number; + clip?: { + x?: number + y?: number + width?: number + height?: number + } + fullPage?: boolean + mask?: string[] + maskColor?: string + omitBackground?: boolean + timeout?: number +} + +export const defaultScreenshotOptions = { // Options for the comparison maxDiffPercentage: 0, @@ -34,14 +50,14 @@ const defaultOptions = { fullPage: true, omitBackground: false, mask: [], - maskColor: 'rgb(255,255,255)', + maskColor: '#555555', timeout: 5000, // Options for pixelmatch threshold: 0.1, alpha:0.6, }; -type _DefaultOptions = Omit & { mask: Array }; +type _DefaultOptions = Omit & { mask: Array }; type _ToHaveScreenshotOptions = Omit & _DefaultOptions; async function compareImages(actual: Buffer, expected: Buffer, opts:_ToHaveScreenshotOptions): Promise<{ pass: boolean; diffPercentage: number, image: PNG }> { @@ -65,7 +81,7 @@ async function customToHaveScreenshot( snapshotPath: string, opts?: Partial, ): Promise<{ pass: boolean; message: () => string }> { - const options = defaultsDeep(opts, defaultOptions); + const options = defaultsDeep(opts, defaultScreenshotOptions); const pathparts = snapshotPath.split('/'); const name = pathparts.pop(); const screenshotDir = pathparts.join('/'); @@ -128,6 +144,11 @@ playwrightExpect.extend({ async toMatchScreenshot(received: Page | Locator, nameOrOptions?: string | Partial, optOptions?: Partial) { const name = typeof nameOrOptions === 'string' ? nameOrOptions : 'screenshot'; const options = typeof nameOrOptions === 'object' ? nameOrOptions : optOptions; + if (options?.mask) { + options.mask = options.mask.map((stringOrLocator) => { + return typeof stringOrLocator !== 'string' ? stringOrLocator : received.locator(stringOrLocator); + }); + } return customToHaveScreenshot.call(this, received, name, options); }, }); diff --git a/packages/playwright/tests/playwright.feature b/packages/playwright/tests/playwright.feature index 9414dda..3bae04b 100644 --- a/packages/playwright/tests/playwright.feature +++ b/packages/playwright/tests/playwright.feature @@ -68,6 +68,31 @@ Feature: Basic tests of Playwright browser and steps Then the file "screenshots/visual-regression-simple-page.png.diff.png" should not exist And the file "screenshots/visual-regression-simple-page.png.actual.png" should exist--delete it + Rule: Setting screenshot options must be supported + + Scenario: Setting a screenshot mask + Given I load the file "tests/examples/example.html" + And the following world config: + ```yaml + screenshotOptions: + mask: + - form + ``` + Then the screenshot should match + + Scenario: Setting a clip area + Given I load the file "tests/examples/example.html" + And the following world config: + ```yaml + screenshotOptions: + clip: + x: 0 + y: 60 + width: 300 + height: 180 + ``` + Then the screenshot should match + @skip-ci Rule: Screenshots should be placed in the proper directory diff --git a/packages/playwright/tests/playwright.steps.ts b/packages/playwright/tests/playwright.steps.ts index 025ae7a..e935176 100644 --- a/packages/playwright/tests/playwright.steps.ts +++ b/packages/playwright/tests/playwright.steps.ts @@ -1,5 +1,5 @@ import { Given, When, Then, DocString, DataTable, AfterAll } from 'quickpickle' -import type { PlaywrightWorld } from '../src/PlaywrightWorld' +import type { PlaywrightWorld, PlaywrightWorldConfig, PlaywrightWorldConfigSetting } from '../src/PlaywrightWorld' import yaml from 'js-yaml' import { expect } from '@playwright/test' @@ -9,15 +9,18 @@ export const projectRoot = path.resolve(path.dirname(url.fileURLToPath(import.me import fs from 'fs' Given('the following world config:', async (world:PlaywrightWorld, rawConf:DocString|DataTable) => { + let config:PlaywrightWorldConfigSetting if (rawConf instanceof DataTable) - world.reset(rawConf.rowsHash()) + config = rawConf.rowsHash() else if (rawConf.mediaType.match(/^json/)) - world.reset(JSON.parse(rawConf.toString())) + config = JSON.parse(rawConf.toString()) else if (rawConf.mediaType.match(/^ya?ml$/)) - world.reset(yaml.load(rawConf.toString())) + config = yaml.load(rawConf.toString()) else if (rawConf.match(/\s*\{/)) - world.reset(JSON.parse(rawConf.toString())) - else world.reset(yaml.load(rawConf.toString())) + config = JSON.parse(rawConf.toString()) + else config = yaml.load(rawConf.toString()) + await world.reset(config) + console.log('world config', world.worldConfig) }) // Filesystem