Seeds¶
Seeds are specific test cases that must appear in the generated covering array. They ensure critical configurations are always tested, regardless of what the generation algorithm produces.
When to Use Seeds¶
- Critical configurations — Production environments, most-common customer setups
- Regression scenarios — Test cases that previously found bugs
- Compliance requirements — Configurations mandated by standards or regulations
- Baseline coverage — Ensuring minimum-viable test coverage for key paths
Complete vs Partial Seeds¶
Complete Seeds¶
Every parameter has a specified value. The exact row appears in results.
| OS | Browser | Screen |
|---|---|---|
| Windows | Chrome | 1080p |
Partial Seeds¶
Some parameters are left as (any). ProTest guarantees the specified values appear together and fills in the rest for optimal coverage.
| OS | Browser | Screen |
|---|---|---|
| Windows | Chrome | (any) |
This guarantees a row with Windows + Chrome exists, but lets ProTest choose the screen size.
Seed Format¶
In the .cahtt model file, seeds are stored as JSON objects mapping parameter names to values:
"Seeds": [
{ "OS": "Windows", "Browser": "Chrome", "Screen": "1080p" },
{ "OS": "macOS", "Browser": "Safari" }
]
Partial seeds simply omit parameters (or set them to null).
Seed Verification¶
After generation, ProTest's verification framework confirms that all seed rows appear in the results.
In the UI¶
See UI Guide: Seeds Tab for how to manage seeds visually.