Announcing TestRail 7.0 with Shared Test Steps and Test Case Restore

We’re excited to announce the general availability of TestRail 7.0 for both our Cloud and Server customers.

This release includes two major features requested by many users—Shared Test Steps and Test Case Restore—as well as a number of other improvements and bug fixes. Continue reading for a quick overview of the release, or read the full announcement for a detailed description of the new features.


Shared Test Steps give users the ability to create sets of common test steps, such as a login process, and use this set of steps in many different test cases. This allows you to edit a single set of test steps and have these edits appear in any test cases using these steps.

Additionally, TestRail 7.0 gives you the option to add more information to each test step with two new separated step fields: References and Additional Information. The References field will allow you to tie each individual test step to an external requirement or another item, and take advantage of TestRail’s Reference integration if you have it enabled. The Additional Information field will function as another text-type field, similar to the existing Step and Expected Result fields.

TestRail’s new Test Case Restore feature provides an added layer of protection against accidental deletion of test cases. Before, when you deleted a test case, it was permanently deleted and could not be recovered without restoring your TestRail instance from a backup. Now, when you delete a test case, you’ll have a choice to “mark as deleted” in addition to “delete permanently”. Cases that are marked as deleted won’t appear in your main test case repository, but can still be viewed and restored for up to 30 days before they are permanently deleted. As a TestRail Admin, you can also remove users’ ability to “delete permanently” completely.

Also for TestRail Administrators, we’ve reorganized the customizations panel and separated custom fields, statuses, and other sections of this panel into their own tabs for easier navigation.

Finally, TestRail Server system administrators will be able to install on a Windows or Unix system running PHP 7.4. With the support of 7.4, we have deprecated support for PHP 7.2.

Sign up for the release webinar, or keep reading for more details!

Shared Test Steps

Many customers have requested the ability to share the same set of test steps across multiple test cases so they can edit a single set of steps instead of having to edit many separate test cases.

With TestRail 7.0, this is now possible! As long as your team has a test case template that uses separated steps in your project, a new Shared Test Steps button will appear in your Test Case repository. Any sets of test steps added to your list of Shared Test Steps will be available in the separated steps field of any test case in the current project.

You can create a set of Shared Test Steps in two ways:

  1. Create a new set of steps from the Shared Test Steps menu
  2. Share a set of existing steps from a test case

Once you’ve added a set of Shared Test Steps, you can view which cases they are used in from the Shared Test Steps list. Any changes you make to Shared Test Steps in this list will automatically appear on all of the Test Cases they are used in.

Shared test steps

How to Add Shared Test Steps
Step 1:
As a user with permission to add and edit test cases, click on the ‘Shared Test Steps’ button when viewing the list of test cases in a project or suite:

Shared test steps

Step 2:
Create a new set of test steps and give them a name:

Create new test steps

Step 3:
In a new or existing test case using the separated steps field, click on the Import button:

Click on Import

Step 4:
Import the set of shared test steps:

As an alternative approach to creating shared test steps, you can edit an existing test case and choose a sequence of steps from the test case to become shared test steps.

With shared test steps, you can:

  • Move the set of steps up or down in the order of steps
  • Use more than one set of shared steps in a test case
  • Add attachments to the steps
  • Add References to these steps (more on this below)
  • Edit a set of shared steps, which will then update any test cases using the steps
  • View and Manage shared test steps via the TestRail API

Additional fields for the Separated Steps field

Many users have requested the ability to add more distinct fields to the separated steps field so they can provide supplementary information, links to requirements, or other data.

Now, administrators can also include an Additional Information field and a References field for separated test steps. The Additional Information field will behave as an additional text field in each test step. The References field will work just like the References field for test cases, test runs, and other entities. The References field will allow users to tie individual test steps to requirements in external tools.

To enable the new fields, proceed to ‘Administration > Customizations’ and edit the settings for the ‘Steps’ type field.

Additional fields

Once enabled, these additional fields will also be usable inside shared test steps, as mentioned above.

Please note: At this time, the References field inside individual test steps will not be taken into account for reports (such as coverage reports) or when viewing linked data inside the TestRail for Jira add-on.

Also, if you are on a TestRail Enterprise plan, have Project-Level Administration enabled, and are unable to turn on these additional field options, double-check that you are assigned to the project you are attempting to edit (or are assigned to all projects) if you are attempting to add the Additional Information and References fields to the Steps test case templates across all of your projects.

Separate Steps In CSV Exports

To further support the changes to the separated steps field, we’ve now made it possible to separate these steps into different rows of a CSV export. This will make reading and re-importing these exports much easier.

Test case restore

Test Case Restore

In the past, deleting test cases was an irreversible action that also deleted associated tests from any open test runs and plans. To recover any data lost when deleting test cases, you had limited options. These options were either time-consuming or resulted in other lost data due to restoring an older database backup.

To mitigate this risk, we’ve added additional permission for permanently deleting test cases that introduce two key new functionalities:

  1. You can now mark test cases as “deleted” without permanently deleting them immediately
  2. You can limit which users in your instance have the permission to delete test cases permanently
Test case restore

Users without permission to permanently delete test cases can instead “mark test cases as deleted,” which functions similarly to placing them in the trash.

Test case restore

If you didn’t mean to delete the test cases or realize you deleted them in error, you can restore cases “marked as deleted” at the click of a button. If the cases are not recovered after a configurable time frame of up to 30 days, TestRail will automatically clean these up and remove them.

You can view any cases that have been marked as deleted in your test case repository by toggling “Display Deleted Test Cases.”

Test case restore

From the time test cases are marked as deleted and until the configured retention period passes, Test cases in this deleted state can be restored in a few ways:

  • By opening the bulk edit screen for deleted test cases
  • By viewing a deleted test case and clicking on the ‘Restore Test Case’ button
  • Using the TestRail API and updating the is_deleted field
Test case restore

Users will still be able to permanently delete test cases if you have that permission granted, but you will also have the option to simply flag them as deleted instead. We recommend the latter.

API Updates

To support the new features and updates in this release, we’ve created some new API endpoints and also updated existing endpoints.

The new API endpoints are as follows:

  • get_shared_step
  • get_shared_steps
  • add_shared_step
  • update_shared_step
  • delete_shared_step

We’ve changed multiple API endpoints to include details around shared test steps, and also to support whether a user has marked a test case as deleted through the TestRail UI. The changes to these endpoints should not break existing API scripts. The updated API endpoints are as follows:

  • get_case
  • get_cases
  • add_case
  • add_cases
  • update_case
  • update_cases
  • get_test
  • get_tests

Permission requirements for the following API endpoints have been modified.

  • delete_case
  • delete_cases
  • delete_suite
  • delete_section

The endpoints to delete test cases will require permission to permanently delete test cases. As a result, when using the API and deleting a section or test suite which contains test cases, you will be required to have permission to permanently delete test cases.

To mark test cases as deleted through the API (or restore them), users can utilize the update_case(s) endpoints.

Customizations Area Change

To make navigation of the customizations area easier for TestRail administrators, we’ve changed the panel’s layout into a tabular view. This layout should help make finding fields and other configurations easier.


PHP 7.4 Support

We’ve introduced PHP 7.4 support for our TestRail Server customers hosting TestRail on Windows or Unix systems. Since PHP 7.2 is no longer officially supported by PHP, we’ve deprecated support for this as well. To use TestRail Server 7.0, your server needs to be running either PHP 7.3 or 7.4.

Support for TLS 1.0 and 1.1 Removed

And finally, we’ve closed support for TLS 1.0 and 1.1. This change will likely only affect customers using old browser versions. The current versions of all supported browsers support TLS 1.2.

API Endpoint Pagination Beta Period

This is the final TestRail feature release before the BETA period for API pagination changes (described here) ends. When TestRail 7.1 is released, the pagination changes will become standard inside the TestRail API. This release is expected in the coming weeks, so please be sure to update any scripts using bulk GET requests (such as get_cases or get_runs) if you have not done so already.

It is also important to update your scripts which use attachments. The ID field for attachments will change from an integer to a string (announced here). This is a relatively minor change, but any code should be updated accordingly.

Getting TestRail 7.0

You can start a 30-day free trial of TestRail here (cloud or server):

If you want to create a subscription for TestRail Cloud, you can do so from within TestRail via Administration > Subscription. Or, if you want to order TestRail Server licenses you can do so from our website here:

Registered customers can download the full version from our customer portal:

TestRail Enterprise

If you’d like to learn more about increasing your storage limit or enabling project-level administration, single sign-on, or any of the other features on TestRail Enterprise, please email us for a trial or quote via [email protected], or you can use the contact form here:

Not sure which TestRail plan you’re on? Reach out and we’d be happy to help.

Updating to TestRail 7.0

TestRail Cloud

TestRail Cloud instances are automatically updated to the latest version. You can check your version via the TestRail Help > About TestRail menu item.

TestRail Server

If you are using the on-premise version of TestRail, you can update to the new version as usual by installing it over your existing TestRail installation (there’s no need to uninstall your existing installation). The database upgrade wizard is automatically started when you access TestRail with your web browser. Please see the update instructions for details:

If you’re using Docker, please refer to the instructions here:

Please ensure you make a backup of your current on-premise installation before upgrading to the new version.

In This Article:

Sign up for our newsletter

Share this article

Other Blogs


Key Factors to Consider When Selecting a Test Case Management Tool

Understanding the need you have is often the first step in defining the method for managing test cases that will work for you and your team.

General, Agile, Software Quality

How to Identify, Fix, and Prevent Flaky Tests

In the dynamic world of software testing, flaky tests are like unwelcome ghosts in the machine—appearing and disappearing unpredictably and undermining the reliability of your testing suite.  Flaky tests are inconsistent—passing at times and failin...

Software Quality, Integrations, TestRail

How a Document Management Company Streamlined Testing and Boosted Efficiency with TestRail and Reflect

A leading document management company in the document management industry has made significant strides in streamlining digital content access and organization with its cloud-based document management platform. Their suite of software products enables compan...