Skip to content

Home / Concepts / Seeds

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.