Home / File Formats / .pict Format (Import/Export)
.pict Format (Import/Export)¶
The .pict format is Microsoft PICT's native text model format. ProTest can import .pict files to convert them to its native .cahtt format, and export models as .pict for use with the standalone PICT tool.
Not the Native Format
ProTest's native format is .cahtt. The .pict format does not store generation settings (engine choice, SIPO tuning) or saved results. Use .cahtt for full-fidelity model storage.
Format Structure¶
A .pict file has three sections, separated by blank lines:
- Parameter definitions
- Sub-model declarations (optional)
- Constraints (optional)
Example¶
# Parameter definitions
OS: Windows (10), Linux, macOS, ~InvalidOS
Browser: Chrome, Firefox | Gecko, Safari, Edge
RAM: 4GB, 8GB, 16GB, 32GB
# Sub-models
{ OS, Browser } @ 3
# Constraints
IF [OS] = "Linux" THEN [Browser] <> "Safari";
IF [OS] = "macOS" THEN [Browser] <> "Edge";
Parameter Syntax¶
ParameterName: Value1, Value2, Value3
Weights¶
Append (N) to bias generation toward a value:
OS: Windows (10), Linux, macOS
Windows will appear ~10x more often than Linux or macOS when the choice doesn't affect coverage.
Negative Values¶
Prefix with ~ for negative testing:
OS: Windows, Linux, ~InvalidOS
Aliases¶
Separate with | to define alternate names:
Browser: Firefox | Gecko, Chrome | Chromium
Sub-Model Syntax¶
{ Param1, Param2, Param3 } @ Order
Constraint Syntax¶
See Concepts: Constraints for the full constraint language.
Comments¶
Lines starting with # are comments:
# This is a comment
OS: Windows, Linux, macOS
Importing .pict Files¶
In the UI¶
Click Import PICT (Ctrl+I) and select a .pict file. ProTest parses it and populates the Parameters, Constraints, and Sub-Models tabs.
On the CLI¶
Use a .pict file directly as input:
protest generate -i model.pict -o results.csv
Exporting to .pict¶
In the UI¶
Click Export PICT to save the current model in .pict format.
On the CLI¶
Specify .pict as an output format:
protest generate -i model.cahtt -o model.pict
Note: This exports the model text only, not the generated results.