playwright icon indicating copy to clipboard operation
playwright copied to clipboard

[Feature]: Per-project toHaveScreenshot fullPage setting

Open nomikura opened this issue 11 months ago • 0 comments

🚀 Feature Request

I’d like to request the ability to configure the fullPage option for toHaveScreenshot on a per-project basis.

Example

I want the default to be fullPage: true, but for specific projects (e.g., Chromium), I need it to be fullPage: false. Example configuration:

expect: {
  toHaveScreenshot: {
    fullPage: true, // Default
  },
},

projects: [
  {
    name: 'Desktop Chromium',
    use: { ...devices['Desktop Chrome'] },
  },
  {
    name: 'Desktop Chromium Not FullPage',
    use: {
      ...devices['Desktop Chrome'],
    },
    expect: {
      toHaveScreenshot: {
        fullPage: false, // Override
      },
    },
  },
  {
    name: 'Desktop Firefox',
    use: { ...devices['Desktop Firefox'] },
  },
  {
    name: 'Desktop WebKit',
    use: { ...devices['Desktop Safari'] },
  },
],

Motivation

I want to configure toHaveScreenshot flexibly for each project to meet different testing needs.

nomikura avatar Jan 23 '25 02:01 nomikura