3 min readplatformstudiotest-managementtest-maintenanceannouncement

Which Test Is Which? Renames, Rewrites, and Tests That Share a Name

TestRelic Team

For most test tools, a test's name is its identity. That shortcut breaks in three everyday ways:

  • Rename a test, or move it to another file, and it looks like a brand-new test, while the old name lingers as a test that never runs again.
  • Rewrite a test under the same name, and months of results from the old implementation look like the new test's history.
  • Give two tests the same name, which a loop or a copy-paste does all the time, and they collapse into one row with one blended history.

September's releases take this apart on the Cloud Platform and in Studio. TestRelic now keeps three things separate: where a test is declared (its file, describe blocks and title), what it does (its steps), and which test it is.

A rename is recognised

When a test's title changes but its steps don't, or it moves to another file with the same title and steps, TestRelic treats it as the same test. The old name no longer sits in the Test Cases list as a separate test that stopped running. It's tucked behind an "N superseded names hidden" note, with a Show button if you want to see it.

A rewrite is a new version

When a test's steps change under the same name, TestRelic records a new version. Open a test's version history from its row in the Test Cases list to see each version, newest first, with what changed (the steps, the title or the suite) and the run it first appeared in, followed by every name the test has had. A rename is recorded as a version too, so you see it on the test's very next run.

Versions and rename tracking come from the steps a test reports, so they apply to frameworks that report steps, such as Playwright.

Tests that share a name are called out

When more than one test reports under the same name, a banner above the Test Cases list says how many names are shared. It also tells you when a single row is blending several tests, which means the pass rate and flakiness on that row aren't any one test's history. That used to happen silently.

Review duplicate names opens the groups. If two entries are really one test, merge them; if they're genuinely different, keep both. A merge can be split again, and TestRelic never merges tests on its own. Two tests that both ran in the same run are never joined automatically.

The Test Cases search finds them for you:

duplicate:true      tests whose name is shared with another test
version:>=2         tests whose body or name has changed at least once
version:none        tests that haven't been versioned yet

Studio keeps same-named twins apart

Two tests with the same title in one file used to share a single row in Studio's Tests list. Selecting either selected the first, opening the second showed the first one's steps, and rerunning by name ran both.

Studio now identifies a test the way your framework does, by file › describe blocks › title. Each twin is its own row, with its own declaration line and steps, and a rerun targets file:line, so it runs the test you picked and nothing else. The same title under two different describe blocks is no longer mistaken for a collision.

A real collision gets a band explaining what the shared name costs you in your framework's own terms, and a Fix the shared name rail hands the rename to the agent. Renaming one twin is the fix that holds everywhere, including in the cloud.

Written test cases, next to the automated ones

The same release gave the test cases your team writes by hand a home in the Test Cases tab, beside Results:

  • Library holds your written cases: search by key, title or step text, and create or edit them in place.
  • Import from TestRail, Xray, Zephyr or a plain CSV. Before anything is written, the import shows what happens to each case, including which ones would be a new version of a case you already have, and which look like duplicates.
  • Coverage lines written cases up against the automated tests that ran: which are automated, which are manual only, and which tests ran without a written case.

Get started

There's nothing to set up on the Cloud Platform: open a repository's Test Cases tab. If any names are shared, the banner is waiting at the top of Results.

For Studio, update to testrelic-cli 0.106.0 or later with testrelic update. Studio needs a Pro plan or above; see Plans & Billing.