Назад към всички

visual-regression-setup

// Configure visual regression testing with Percy, Chromatic, or custom screenshot comparison

$ git log --oneline --stat
stars:384
forks:73
updated:March 4, 2026
SKILL.mdreadonly
SKILL.md Frontmatter
namevisual-regression-setup
descriptionConfigure visual regression testing with Percy, Chromatic, or custom screenshot comparison
allowed-toolsRead, Write, Edit, Bash, Glob, Grep
tagstesting,visual-regression,screenshots,ui-testing,desktop

visual-regression-setup

Configure visual regression testing for desktop applications to catch unintended UI changes.

Capabilities

  • Configure Percy integration
  • Set up Chromatic for Storybook
  • Custom screenshot comparison
  • Configure threshold settings
  • Handle dynamic content masking
  • Set up CI/CD integration

Input Schema

{
  "type": "object",
  "properties": {
    "projectPath": { "type": "string" },
    "provider": { "enum": ["percy", "chromatic", "reg-suit", "custom"] },
    "framework": { "enum": ["playwright", "cypress", "puppeteer"] }
  },
  "required": ["projectPath"]
}

Percy Integration

// playwright.config.js
import { defineConfig } from '@playwright/test';

export default defineConfig({
  use: {
    screenshot: 'only-on-failure'
  }
});

// test.spec.js
import { test } from '@playwright/test';
import percySnapshot from '@percy/playwright';

test('visual test', async ({ page }) => {
  await page.goto('/');
  await percySnapshot(page, 'Home page');
});

Custom Comparison

const { toMatchImageSnapshot } = require('jest-image-snapshot');
expect.extend({ toMatchImageSnapshot });

test('matches screenshot', async () => {
  const screenshot = await page.screenshot();
  expect(screenshot).toMatchImageSnapshot({
    failureThreshold: 0.01,
    failureThresholdType: 'percent'
  });
});

Related Skills

  • playwright-electron-config
  • desktop-ui-testing process