Test Cases
Test cases are the foundation of your testing efforts. Each test case describes a specific scenario to verify, with clear steps and expected results. This guide covers how to create, manage, and organize your test cases effectively.
Create a Test Case
- Navigate to your project and click Test Cases.
- Click + New Test Case.
- Fill in the fields described below.
- Click Save as Draft or Save & Approve (if you have approval rights).
Basic Information
| Field | Description | Example |
|---|---|---|
| Title | A clear, descriptive title that states what the test verifies. | "Verify user can reset password via email" |
| Description | Additional context about what is being tested and why. | "Tests the full password reset flow including email delivery and new password validation." |
| Priority | How important this test is. | Critical, High, Medium, or Low |
| Type | The category of testing. | Functional, Regression, Smoke, Integration, UI, API, Performance, Security, Accessibility |
| Status | Where the test case is in its lifecycle. | Draft (default for new test cases) |
Preconditions
List anything that must be true before the test can run. Write these as clear, verifiable statements.
Example:
- A registered user account exists with a verified email address.
- The user is not currently logged in.
- The SMTP email service is running.
Test Steps
For each step, provide the Action (what to do) and the Expected Result (what should happen). Steps are automatically numbered.
| Step | Action | Expected Result |
|---|---|---|
| 1 | Navigate to the login page and click "Forgot Password?" | The password reset form is displayed |
| 2 | Enter the registered email address and click "Send Reset Link" | A success message confirms the email was sent |
| 3 | Open the reset email and click the reset link | The "Set New Password" page is displayed |
| 4 | Enter a new password that meets requirements and click "Reset Password" | A confirmation message is shown and the user is redirected to the login page |
| 5 | Log in with the new password | The user is successfully logged in and sees the dashboard |
Write steps as if the person running the test has never seen the application before. Be specific about what to click, what to type, and what the expected outcome looks like.
Tags
Add tags to categorize your test cases for easy filtering and searching. Examples:
authentication,login,smoke-test,critical-path,sprint-15,mobile
Attachments
You can attach files to a test case for reference:
- Screenshots showing expected UI states.
- Test data files (CSV, JSON, etc.).
- Design mockups or reference documents.
Click Attach File or drag and drop files onto the test case form.
Test Case Lifecycle
Every test case in ProvaLab.io follows a four-stage lifecycle:
Draft --> Review --> Approved --> Deprecated
| Status | Meaning |
|---|---|
| Draft | The test case is being written or is incomplete. It cannot be added to a test run. |
| Review | The test case is ready for peer review. Team members can comment and suggest changes. |
| Approved | The test case has been reviewed and accepted. It is ready to be included in test runs. |
| Deprecated | The test case is no longer relevant (e.g., the feature was removed). It is kept for historical reference but excluded from new runs. |
Change a Test Case's Status
- Open the test case.
- Click the Status dropdown (or Change Status button).
- Select the new status.
- Add a comment explaining the change (e.g., "Approved after review by @janedoe").
- Click Update Status.
Only users with QA Engineer, QA Manager, Admin, or Owner roles can change test case statuses. The specific transitions allowed may depend on your organization's workflow configuration.
Edit a Test Case
- Open the test case by clicking on it.
- Click the Edit button.
- Make your changes.
- Click Save Changes.
ProvaLab.io keeps a history of all changes, so you can always see who changed what and when.
Clone a Test Case
If you need a similar test case with small variations:
- Open the test case.
- Click the more options menu (three dots).
- Select Duplicate.
- ProvaLab.io creates a copy with "(Copy)" appended to the title.
- Edit the copy with your changes.
- Save.
Cloning is useful when you need variations of the same test for different data sets, browsers, or user roles.
Bulk Operations
When you need to make changes to many test cases at once:
- Go to the Test Cases list view.
- Select multiple test cases using the checkboxes.
- The bulk action toolbar appears at the top. Choose an action:
| Action | What it does |
|---|---|
| Change Status | Move all selected test cases to a new lifecycle status. |
| Add Tags | Apply one or more tags to all selected test cases. |
| Move to Suite | Move the selected test cases into a different test suite. |
| Export | Download the selected test cases as CSV, Excel, or JSON. |
| Delete | Permanently delete the selected test cases. |
Add Comments to a Test Case
- Open the test case.
- Scroll to the Comments section.
- Type your comment. Use
@usernameto mention a team member. - Click Post Comment.
Comments are useful for:
- Discussing whether a test case is complete during review.
- Noting known issues or environment-specific considerations.
- Requesting changes before approval.
Search and Filter Test Cases
Use the filter bar at the top of the test cases list to narrow down what you see:
| Filter | Options |
|---|---|
| Status | Draft, Review, Approved, Deprecated |
| Priority | Critical, High, Medium, Low |
| Type | Functional, Regression, Smoke, etc. |
| Tags | Any tags you have applied |
| Assigned To | Filter by team member |
| Created Date | Date range |
You can also use the search bar to find test cases by title, ID, or keywords.
Save your frequently used filter combinations for quick access. Click Save Filter after applying your filters.
Best Practices
- Write clear titles -- Start with a verb: "Verify...", "Confirm...", "Validate...". Include what is being tested and the expected behavior.
- One scenario per test case -- Each test case should test one specific thing. If you find yourself writing "and then also verify...", consider splitting it into two test cases.
- Keep steps atomic -- Each step should be a single action with a single expected result.
- Maintain traceability -- Link test cases to requirements so you can track what is covered and what is not.
- Review regularly -- Schedule quarterly reviews to deprecate outdated tests, update steps for changed features, and close gaps.