Skip to content

Describe E2E tests by focused coverage - #704

Open
kieran-osgood-shopify wants to merge 2 commits into
mainfrom
e2e-feature-coverage-tags
Open

Describe E2E tests by focused coverage#704
kieran-osgood-shopify wants to merge 2 commits into
mainfrom
e2e-feature-coverage-tags

Conversation

@kieran-osgood-shopify

@kieran-osgood-shopify kieran-osgood-shopify commented Aug 28, 2026

Copy link
Copy Markdown
Contributor

TLDR

Changing the tagging methodology to simplify the opt in for a test
The duplication introduced in the include arrays will be rectified in: #703 where we make it additive for an application to declare tags

What

  1. Replace the broad checkout E2E selector with unique tags that name the primary regression each flow detects
  2. Cleaning up unused tags ios-only and android-only
  3. Ruby test cleanup (tests dependent on the exact yml content rather than the 'operations' of union-ing the include/exclude arrays)

https://github.com/Shopify/checkout-kit/pull/705/changes works in concert with this PR to use the matrix expansion in local runs to narrow the possible tags available based on what we allow on CI

What changes are you making?

We had a broad checkout tag on all checkout related tests, this proved awkward when it comes to calculating the include/exclude union of tags

We split the checkout tag into focused coverage tags because Maestro’s include-tag filtering uses OR not AND.

If a test were tagged:

  tags:
    - checkout
    - preload

An application configured (in matrix.yml) for checkout that deliberately doesnt enable preload (e.g. react-native) is now forced to run it, because it greedily matches the checkout.

@github-actions github-actions Bot added the #gsd:50662 Rebase Checkout Kit on UCP label Aug 28, 2026
end

def base_config
YAML.safe_load_file(MATRIX_PATH, aliases: true)

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Every change to the matrix.yml was causing a cascade of required changes here asserting the structure of the yml, rather than the logic of whether the matrix expansion was happening correctly

Using a static object here we are less brittle to renames

@kieran-osgood-shopify
kieran-osgood-shopify marked this pull request as ready for review August 28, 2026 13:39
@kieran-osgood-shopify
kieran-osgood-shopify requested a review from a team as a code owner August 28, 2026 13:39
@bitrise

bitrise Bot commented Aug 28, 2026

Copy link
Copy Markdown

Install this build

Open Tophat, select your target device, then click Install. Links open on the Mac running Tophat.

SDK Install
React Native Install with Tophat
Swift Install with Tophat
Kotlin Install with Tophat

Checkout Kit E2E results

Status Suite Target Platform OS version tag Device
react-native-ios react-native ios latest iPhone 15
iOS 27 Beta
react-native-android react-native android latest Google Pixel 9
Android 17.0
kotlin-android kotlin android latest Google Pixel 9
Android 17.0
swift-ios swift ios latest iPhone 15
iOS 27 Beta

Assisted-By: devx/5f10c07c-0803-4f05-bc88-265174164e5a
Assisted-By: devx/5f10c07c-0803-4f05-bc88-265174164e5a
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

#gsd:50662 Rebase Checkout Kit on UCP

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant