This is a complete guide to Visual Regression Testing with Playwright, a modern end-to-end testing framework that supports Chromium, Firefox, and WebKit.
What is Visual Regression Testing?
Visual regression testing ensures that changes in your code do not unintentionally alter the appearance (layout, colors, fonts, etc.) of your web application. Playwright helps you automate visual tests and compare screenshots to detect UI changes.
Capturing Screenshots
You can capture screenshots using Playwright’s page.screenshot() method:
// @ts-check import { test, expect } from '@playwright/test'; test('homepage visual comparison', async ({ page }) => { await page.goto('https://www.google.com/'); const screenshot = await page.screenshot(); expect(screenshot).toMatchSnapshot('homepage.png', { threshold: 0.2 }); });
- This will take a screenshot and compare it against the baseline (homepage.png).
- The first time it runs, it stores the snapshot in a __snapshots__ folder.
- On subsequent runs, it compares against the baseline.
Running the Tests
Run your tests using:
npx playwright test
Use --update-snapshots to update baseline images:
npx playwright test --update-snapshots
After running test, it will capture the screenshot in below location.
This is all about complete guide to Visual Regression Testing with Playwright.
No comments:
Post a Comment