Home / Getting Started / Quick Start
Quick Start¶
Create your first covering array in under two minutes.
This example tests a web application across different operating systems, browsers, and screen sizes.
The Problem¶
You need to test a web app on 3 operating systems, 4 browsers, and 3 screen sizes. That's 3 x 4 x 3 = 36 combinations. Pairwise testing covers all two-way interactions in far fewer test cases.
Using the Desktop Application¶
-
Launch ProTest and click New to start with a blank model.
-
Add parameters on the Parameters tab:
Parameter Values OS Windows, Linux, macOS Browser Chrome, Firefox, Safari, Edge Screen 1080p, 1440p, 4K 
-
Click Generate (or press Ctrl+G).
-
View results on the Results tab — you should see 9 test cases that cover every pair of parameter values.

Using the CLI¶
-
Create a model file called
webapp.cahtt:{ "Version": 1, "GlobalOrder": 2, "Parameters": [ { "Name": "OS", "Values": [ { "Name": "Windows", "Weight": 1, "IsNegative": false }, { "Name": "Linux", "Weight": 1, "IsNegative": false }, { "Name": "macOS", "Weight": 1, "IsNegative": false } ] }, { "Name": "Browser", "Values": [ { "Name": "Chrome", "Weight": 1, "IsNegative": false }, { "Name": "Firefox", "Weight": 1, "IsNegative": false }, { "Name": "Safari", "Weight": 1, "IsNegative": false }, { "Name": "Edge", "Weight": 1, "IsNegative": false } ] }, { "Name": "Screen", "Values": [ { "Name": "1080p", "Weight": 1, "IsNegative": false }, { "Name": "1440p", "Weight": 1, "IsNegative": false }, { "Name": "4K", "Weight": 1, "IsNegative": false } ] } ], "ConstraintText": "", "SubModels": [], "Seeds": [] } -
Generate the covering array:
protest generate -i webapp.cahtt -o results.csv -
Open
results.csv— each row is a test case to execute.
What Just Happened?¶
Instead of testing all 36 combinations, ProTest found 9 test cases that guarantee every pair of (OS, Browser), (OS, Screen), and (Browser, Screen) values appears at least once. This is pairwise (2-way) coverage — the default interaction strength.
Next Steps¶
- Add constraints — Exclude invalid combinations (e.g., Safari only on macOS)
- Try the SIPO engine — Often produces 10-30% fewer test cases (results vary by scenario)
- Explore the UI — Learn about all six tabs and advanced features