Back to Work
Testing Infrastructure2026

Shopify E2E

PlaywrightBrowserStackAccessibilityPerformanceShopify Plus

Store-agnostic E2E testing framework for Shopify Plus — cross-browser testing across 40+ device combinations, WCAG 2.1 AA compliance, performance budgets, and third-party app validation (Appstle, Klaviyo, GoAffPro).

The Challenge

Shopify Plus stores rely on complex combinations of themes, apps, and custom code that break silently across browsers and devices. Manual QA can't cover 40+ browser/device combinations, accessibility compliance, performance regressions, and third-party app integrations — especially when theme updates or app installations create cascading failures.

The Solution

A store-agnostic testing framework that treats store configuration as data, not code. Add a new Shopify store by dropping in a config file — the entire test suite runs against it automatically. Composable Playwright fixtures (base → shopify → a11y → performance) give every test automatic screenshot capture, store config injection, and clean cart state without boilerplate.

Design
Code
Result
fixtures/shopify.fixture.tstypescript
  1export const test = base.extend<ShopifyFixtures>({  2  storeConfig: async ({}, use) => {  3    const config = loadStoreConfig(process.env.STORE_ID)  4    await use(config)  5  },  6  7  shopifyPage: async ({ page, storeConfig }, use) => {  8    // Clear cart state before each test  9    await page.context().clearCookies() 10    await page.goto(storeConfig.baseUrl) 11    await page.waitForSelector(storeConfig.selectors.body) 12    await use(page) 13  }, 14 15  a11yAudit: async ({ page }, use) => { 16    const audit = async (selector?: string) => { 17      const results = await new AxeBuilder({ page }) 18        .withTags(['wcag2a', 'wcag2aa']) 19        .analyze() 20      return results.violations 21    } 22    await use(audit) 23  }, 24}) 25
Scroll to explore
Tech Stack
TypeScriptPlaywrightBrowserStack SDKaxe-coreweb-vitals

Interested in similar work?

Let's discuss how I can help bring your Shopify project to life.