Test cases are living documents. Treat them that way.

Version history. Status workflows. Shared steps. Custom fields. Templates. The infrastructure to keep your test suite accurate as your product changes.

Version History

Every update to a test case creates a snapshot of the previous version. Restore it in one click. Annotate each change with a note. Nothing is silently overwritten, and nothing is permanently lost.

The full history is accessible — not archived somewhere. The most recent version and every prior one, with the date, the author, and the change note.

Version History — TC-42
v32025-06-10
by alex — Updated expected result for promo validation
v22025-06-01
by jordan — Added edge case for expired promo
v12025-05-20
by alex — Initial version

Status Workflow

DRAFT → IN_REVIEW → APPROVED → DEPRECATED.

A test case in DRAFT is a proposal. In IN_REVIEW, it's being evaluated. APPROVED means it's verified, stable, and ready to run. DEPRECATED means the feature it covered has changed and the case hasn't caught up yet.

The workflow isn't ceremony. It's how you keep a test suite from becoming a collection of assumptions nobody has reviewed in six months.

Status Workflow
TC-42: Checkout promo codeAPPROVED
TC-43: Guest login validationIN_REVIEW
TC-44: Password reset flowDRAFT
TC-45: Mobile nav collapseDEPRECATED

Shared Steps

Define a step once. Reference it across cases. Change it in one place and every case that uses it reflects the change.

For authentication flows, setup sequences, repeated teardown procedures — anything repeated across the suite. Defined once. Maintained once.

Shared Step: "Login as user"
Step:
Navigate to /login
Step:
Enter email and password
Step:
Click "Sign In"
Referenced by 12 test cases

Custom Fields

User-defined fields per project. TEXT or DROPDOWN with configurable options. Bindable to test cases, runs, and plans. Batch assignment for large updates.

The platform doesn't assume it knows your taxonomy. You define what metadata matters and attach it where it belongs.

Project Custom Fields
ModuleDROPDOWN
Billing, Auth, Dashboard
SprintDROPDOWN
S25, S26, S27
Jira IDTEXT
Free text
Risk LevelDROPDOWN
Critical, High, Medium, Low

Templates

Reusable test case templates with preconditions, steps, postconditions, and expected results. Apply to an existing case. Define once for every case of the same type.

Available Templates
API Test
Endpoint validation
UI Flow
User journey test
Regression
Full scenario check
Smoke Test
Critical path check

Start managing test cases.

Import your existing tests and see how RuyQA structures them.

Start managing test cases →