Skip to content
RecipesDoc

A UI Change Broke Many Tests, Fix Them in One PR

Certyn updates the selectors and texts that a UI change broke, across the whole suite, in one pull request.

For teams whose suite went red after a planned redesign, a renamed button, or new copy.

Your setup

  • A Playwright, Cypress, Selenium or similar suite in a GitHub repo.
  • A UI change was merged on purpose, and many tests now fail on old selectors or old texts.
  • The new UI is deployed to a test environment.

Say this to Certyn

The new checkout design (PR #412) broke about 30 tests in acme/web. The change is intended. Update the tests in one PR.

What Certyn does

  1. Opens the GH_TOKEN form if needed: Contents and Pull requests, Read and write.
  2. Reads the UI change you named, so it knows what changed on purpose.
  3. Runs the suite against the environment and sorts each failure: broken test (old selector or text), product bug, flaky, or setup.
  4. Fixes broken tests at the source. A locator in a shared page object or helper is fixed once, not in 30 files. It uses the locator style your suite already uses (roles, test ids, or text).
  5. Runs the fixed tests again on a certyn/... branch.
  6. Opens one pull request with the list of tests it changed and why.

What you get

  • One pull request for the whole UI change.
  • A run report with what was fixed and what still fails.
  • A Certyn issue for each real product bug found on the way. Ten tests that fail on one broken page are one issue.

Limits

  • Certyn cannot know by itself that a UI change was intended. Name the PR or say the change is intended. Otherwise a missing button is a product bug and is reported, not removed from the test.
  • Certyn never deletes a check to make a test pass. A test whose flow no longer exists is listed in the PR for you to decide.
  • A long suite needs a longer run, up to 4 hours. Certyn asks before it uses more time.