Skip to content
| Marketplace
Sign in
Visual Studio Code>Programming Languages>PICT Pairwise Testing with CoverTableNew to Visual Studio Code? Get it now.
PICT Pairwise Testing with CoverTable

PICT Pairwise Testing with CoverTable

WalkFrame

|
1 install
| (0) | Free
Syntax highlighting, diagnostics, and covering-array generation for Microsoft PICT model files, powered by the covertable engine.
Installation
Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.
Copied to clipboard
More Info

PICT Pairwise Testing with CoverTable

Syntax highlighting, live diagnostics, and covering-array generation for Microsoft PICT model files, powered by the CoverTable engine — no external binary required.

Features

  • Syntax highlighting for .pict files: parameters, values, weights (N), negatives ~, aliases a|b, parameter references <Name>, sub-models { A, B } @ N, and the constraint language (IF/THEN/ELSE, AND/OR/NOT, IN/LIKE, [Field] refs, sets, strings, arithmetic).
  • Diagnostics: unknown references, malformed constraints, and other parse errors are surfaced inline with line numbers, as you type.
  • Generate Covering Array: run the model and open the result as a TSV/CSV table. You are prompted for the output file name, pre-filled with <model>.tsv / <model>.csv; the file is written next to the model, overwriting any existing file with that name, and opened. Command: PICT: Generate Covering Array (also on the editor context menu).
  • Progress & cancel: generation runs in time slices with a determinate progress notification (<rows> rows · <pct>% · ~<n>s left) that stays responsive and can be cancelled mid-run. On completion you get a summary (row count, order, elapsed time) and a warning if any pairs were left uncovered by the constraints.
  • Status-bar footer: while a .pict file is active, the bottom bar shows Strength · Criterion · Sorter · Case · ▷ Generate. Click any option to change it (persisted to settings); click Generate to run.

Settings

Setting Default Description
pict.strength 2 Combinatorial order (/o). 2 = pairwise, 3 = triple-wise.
pict.criterion greedy Row-construction criterion: greedy (fewest rows) or simple.
pict.sorter random Candidate ordering: random (varies) or hash (deterministic).
pict.caseSensitive false Case-sensitive comparisons/aliases. Off = case-insensitive.
pict.output.format tsv Result separator: tsv or csv.
pict.output.includeHeader true Emit a header row of parameter names.
pict.output.promptFileName true Ask for the output file name before generating.
pict.diagnostics.enable true Toggle inline parse diagnostics.

The status-bar footer edits pict.strength, pict.criterion, pict.sorter, and pict.caseSensitive directly, so it stays in sync with these settings. A file name ending in .csv/.tsv overrides pict.output.format for that run.

Per-file { ... } @ N sub-models still override pict.strength for their factors.

Development

pnpm install          # or npm install
pnpm run compile      # bundle once to dist/extension.js
pnpm run watch        # rebuild on change

Then press F5 in VS Code to launch an Extension Development Host.

The extension imports the engine by package name — covertable and covertable/pict — resolved to the in-repo source via tsconfig.json paths (the same convention docs/ uses). esbuild honours those paths, so the engine is bundled straight from source and stays in lock-step with the library shipped in this repository. No build of typescript/ is required first.

  • Contact us
  • Jobs
  • Privacy
  • Manage cookies
  • Terms of use
  • Trademarks
© 2026 Microsoft