#Release Management Overview - Test Execution
Releases represent planned versions or milestones of your project. They help you structure and track test executions over time for a specific version, sprint, or delivery milestone.
A release acts as a testing container where multiple executions (such as sanity, regression, or smoke) can be performed during the lifecycle of that release.
#Core Concepts
#What are Releases?
Releases are used to organize related test executions around a specific version or milestone.
They provide:
- Version-based testing: Track testing for a specific release or milestone
- Execution grouping: Run multiple executions under the same release
- Timeline tracking: Define start and end dates for the release
- Progress visibility: Monitor execution progress across the release lifecycle
- Historical reference: Preserve execution data for completed releases
A single release can contain multiple executions, for example:
- Sanity testing
- Regression testing
- Smoke testing
- Re-validation runs
#Releases vs Test Runs
It is important to clearly distinguish between Release Executions and Test Runs.
#Release Executions
- Created inside a release
- Represent executions tied to a specific version or milestone
- Multiple executions can exist within the same release
- Used when testing is planned and version-driven
Example:
Release v2.3
- Sanity Execution
- Regression Execution
- Hotfix Verification Execution
#Test Runs (Standalone)
- Independent executions
- Not tied to any release
- Used for ad-hoc, exploratory, or quick validations
- Ideal for CI checks, one-off testing, or investigation runs
Important
Test runs cannot be linked to releases.
#When to Use What?
| Use Case | Recommended |
|---|
| Planned version testing | Release executions |
| Multiple execution cycles for a version | Release executions |
| Quick validation | Test run |
| Exploratory testing | Test run |
| CI / ad-hoc checks | Test run |
#Release Statuses & Execution Rules
Release status determines whether test executions are allowed, whether warnings are shown, and what actions can be performed within a release.
Choosing the correct status helps teams control execution flow and maintain release discipline.
#Release Statuses
#Not Started
The release is planned and ready to begin testing.
- Test executions are allowed
- A warning is shown before execution starts
- Release can be moved to In Progress to remove warnings
When to use
- Planning is complete
- Early or pre-release testing (sanity, readiness checks)
#In Progress
The release is actively under test.
- Test executions are fully allowed
- No warnings or restrictions
- Release can be paused or completed
When to use
- Main testing phase
- Regression, smoke, re-runs, and validation cycles
#Paused
The release is temporarily on hold.
- Test executions are NOT allowed
- Existing executions are blocked
- Release can be resumed by switching back to In Progress
- Can also be moved directly to Completed
When to use
- Environment downtime
- External dependency blockers
- Temporary halt in testing
#Completed
All testing activities for the release are finished.
- Test executions are NOT allowed
- Release is locked for modifications
- Release can be:
- Reactivated by moving back to In Progress
- Archived for historical reference
When to use
- Testing is complete
- Awaiting sign-off or closure
#Archived
The release is permanently closed and preserved for history.
- Test executions are NOT allowed
- Modifications are NOT allowed
- Status cannot be changed
When to use
- Final state for completed releases
- Audits, reporting, and long-term reference
#Important Notes
- Release status directly controls executability, not permissions alone
- Paused and Completed block executions without deleting data
- Archived is irreversible and intended for compliance and history
- Not Started allows execution intentionally, but always shows a warning
#Best Practices
- Use releases for planned, version-based testing
- Create separate executions for different testing phases
- Avoid overloading a single execution
- Use standalone test runs for quick or exploratory testing
- Keep releases focused and time-bound
#Next Steps