A PICT model in, the pairwise test suite out — proven in your browser
Paste a Microsoft PICT model — parameters and values, ~negative values,
a | alias values, weights, sub-models and IF … THEN …; constraints. Your browser generates
the pairwise (or any t-wise) suite, proves every achievable pair is covered and every test obeys every
constraint, names the pairs the constraints exclude and exports CSV, Markdown and JSON — free, before you sign in.
Then a test designer reviews the model against your feature description, as operations the browser
applies, or names every test with steps and an expected result.
Each example ships with a saved model run, so you can see a whole review — operations, constraint verdicts and the reconciliation — and a whole set of named tests without signing in and without spending a credit.
What this does, and what it does not
The engine reads the model as PICT does: one Name: v1, v2 line per parameter; ~v marks a
negative value that PICT puts at most one of in any test and pairs with every positive value of the other parameters;
a | b makes aliases of one value; (n) weights a value; { A, B, C } @ 3 asks for
three-way coverage inside a sub-model; constraints are IF … THEN … [ELSE …]; or a bare predicate, over
[Parameter] references with = <> < <= > >= IN { } LIKE AND OR NOT and
parameter-to-parameter comparisons. A t-wise suite is built greedily — each test seeded with an uncovered tuple and
filled with the values that cover the most remaining tuples without violating a constraint — then checked: every
achievable tuple appears in a test, every test satisfies every constraint, no test carries two negative values, no
test repeats. A tuple no valid test can contain is listed as excluded rather than counted as missing.
The suite is small, not provably minimal: the lower bound shown is the product of the two (or t) largest parameters, and PICT itself may return a different suite of a slightly different size. The desk does not run any test. The designer then judges whether the model matches the feature — the browser has already settled what the suite covers — and every figure they write is re-read against this engine. Derived from the agent skill @sickn33/pypict-skill, a listing of the PICT Test Designer workflow, over Microsoft PICT's model language; not affiliated with either author.
Nothing to hand? Load the — five parameters, three constraints, one negative value — or the whose review finds what is missing, or . All three replay a saved run for free.