Skip to content

Execution Stacks & Suites

In Terraform, a Stack or Configuration Module groups resources to be provisioned and reconciled together. In Testform, this capability is realized through testrun (execution cycles) and testplan (master plans) scopes, managed via the testform suite command.


Testform allows extracting scenarios matching specific tags and bundling them into a declarative .run.feature suite file:

Ventana de terminal
# Extracts all scenarios tagged with @smoke across the workspace
testform suite tags "[@smoke]" -title="Fast Smoke Regression"
# Extracts only @critical scenarios from a specific feature file
testform suite tags "checkout.case.feature.[@critical]" -title="Critical Checkout Suite"

The output is a declarative .run.feature file:

@testrun @tr-01
Feature: Fast Smoke Regression
Rule: auth.case.feature
Scenario: Valid credentials login
* mark status = pending
Rule: checkout.case.feature
Scenario: Credit card checkout
* mark status = pending

When interacting with suites, you can address resources using three different strategies:

  1. Identity Tag (@tr-N / @tp-N):
    Ventana de terminal
    testform suite -target="@tr-01" -fill
  2. Canonical Address:
    Ventana de terminal
    testform suite -target="specs/runs/smoke.run.feature.@tr-01" -fill
  3. Relative File Path:
    Ventana de terminal
    testform suite -target="smoke.run.feature" -fill

Once a test finishes in your test runner (Playwright, Cypress, Supertest, or K6), you record the outcome in the feature file and reconcile with GitHub:

Ventana de terminal
testform suite -target="@tr-01" -mark="@tc-01=passed"

The engine updates the rule within the .run.feature file:

Scenario: Valid credentials login
* mark status = passed

And when running testform apply, the synchronized item card on GitHub Projects V2 transitions automatically to Done.