---
title: >-
  Automated testing for Shopify UI extensions with @shopify/ui-extensions-tester
  - Shopify developer changelog
description: >-
  Shopify’s developer changelog documents all changes to Shopify’s platform.
  Find the latest news and learn about new platform opportunities.
source_url:
  html: >-
    https://shopify.dev/changelog/automated-testing-for-shopify-ui-extensions-with-shopify-ui-extensions-tester
  md: >-
    https://shopify.dev/changelog/automated-testing-for-shopify-ui-extensions-with-shopify-ui-extensions-tester.md
metadata:
  effectiveApiVersion: 2026-04
  affectedApi:
    - displayName: Admin Extensions
      handle: admin-extensions
    - displayName: Checkout UI
      handle: checkout-ui-api
    - displayName: Customer Accounts
      handle: customer-accounts
    - displayName: POS Extensions
      handle: pos-extensions
  primaryTag:
    displayName: API
    handle: api
  secondaryTag:
    displayName: New
    handle: new
  indicatesActionRequired: false
  createdAt: '2026-04-06T11:06:36-04:00'
  postedAt: '2026-04-13T12:00:00-04:00'
  updatedAt: '2026-04-14T06:52:01-04:00'
  effectiveAt: '2026-04-07T12:00:00-04:00'
---

April 13, 2026

Tags:

* Admin Extensions
* Checkout UI
* Customer Accounts
* POS Extensions
* 2026-04

# Automated testing for Shopify UI extensions with @shopify/ui-extensions-tester

As of API version 2026-04, Shopify provides an official testing library for UI extensions. `@shopify/ui-extensions-tester` lets you write unit tests for extensions on any surface — Checkout, Admin, Customer Accounts, and POS — without a running Shopify host.

### What it does

The library provides strongly typed mocks of the extension API, so you can render extensions in isolation, simulate user interactions, and verify behaviour against public APIs with full type safety.

### Key capabilities

* **Render and query**: Render your extension in a standard DOM environment and query the output using standard testing patterns.
* **Type-safe mocks**: The mocked `shopify` global uses the same types as the real API, catching incorrect API usage at test time.
* **Surface-specific defaults**: Sensible mock defaults for each target surface (Checkout, Admin, Customer Accounts, POS) so tests work out of the box.
* **Event simulation**: Trigger user interactions and test async state changes with `dispatchEvent()` or `@testing-library/preact`.
* **AI-agent friendly**: Strongly typed mocks and predictable test patterns make the library well-suited for AI-assisted test-driven development.

### Getting started

Read [documentation](https://github.com/Shopify/ui-extensions/blob/2026-04/packages/ui-extensions-tester/README.md) to learn more. Get started with [example test suites](https://github.com/Shopify/ui-extensions/tree/2026-04/examples/testing) for every surface.
