Test suite commands
The CLI provides commands for validating and managing E2Engine TestSuites.
e2engine validate testsuitee2engine create testsuitee2engine get testsuitee2engine get testsuitese2engine run testsuitee2engine delete testsuiteFor the TestSuite resource model and specification format, see Test suites.
Validate a TestSuite
Section titled “Validate a TestSuite”Validate a TestSuite specification before creating it:
e2engine validate testsuite <spec-path>For example:
e2engine validate testsuite testsuite.yamlIf the specification is valid, the command prints:
TestSuite spec is validValidation checks the specification against the TestSuite model and its validation rules without creating a persistent TestSuite resource.
Verbose output
Section titled “Verbose output”Use --verbose or -v to display the validated TestSuite:
e2engine validate testsuite testsuite.yaml --verboseTable output provides a compact representation of the resource. Use JSON or YAML to inspect the complete validated model:
e2engine validate testsuite testsuite.yaml -o yaml -ve2engine validate testsuite testsuite.yaml -o json -vQuiet validation
Section titled “Quiet validation”Use --quiet or -q when only the command result is needed:
e2engine validate testsuite testsuite.yaml --quietA successful validation produces no output. An invalid specification returns an error.
This form is useful in scripts and CI/CD pipelines.
Create a TestSuite
Section titled “Create a TestSuite”Create a TestSuite from a specification:
e2engine create testsuite <spec-path>For example:
e2engine create testsuite testsuite.yamlOn success, the default output identifies the created resource:
created testsuite, name: smoke id: <testsuite-id> version: 1.0.0Verbose output
Section titled “Verbose output”Use --verbose to display the created TestSuite instead of the compact confirmation:
e2engine create testsuite testsuite.yaml --verboseThe default table format shows the resource metadata. JSON and YAML expose the complete created TestSuite:
e2engine create testsuite testsuite.yaml -o yaml -vQuiet output
Section titled “Quiet output”With --quiet, the command prints only the ID of the created TestSuite:
e2engine create testsuite testsuite.yaml --quietThis is useful when another command or script needs to capture the new resource ID.
Get a TestSuite
Section titled “Get a TestSuite”Retrieve a TestSuite using its name or an ID prefix:
e2engine get testsuite <ref>For example:
e2engine get testsuite smokeor:
e2engine get testsuite <testsuite-id-prefix>The default table output provides a compact view of the resource.
Use YAML or JSON to retrieve its complete structured representation:
e2engine get testsuite smoke -o yamle2engine get testsuite smoke -o jsonThis includes the TestSuite specification and its selectors.
List TestSuites
Section titled “List TestSuites”List stored TestSuites using the plural testsuites command:
e2engine get testsuitesThe default output is a table containing:
| Column | Description |
|---|---|
ID |
Compact TestSuite ID |
NAME |
TestSuite name |
VERSION |
Resource version |
CREATED |
Creation timestamp |
UPDATED |
Last update timestamp |
Limit results
Section titled “Limit results”Use --limit to restrict the maximum number of TestSuites returned:
e2engine get testsuites --limit 20Values above the configured maximum are capped automatically.
Ordering
Section titled “Ordering”Results can be ordered by:
idnameversioncreatedAtupdatedAtSelect the field with --order-by:
e2engine get testsuites --order-by nameSelect ascending or descending order with --order-direction:
e2engine get testsuites \ --order-by updatedAt \ --order-direction descStructured output
Section titled “Structured output”Use JSON or YAML when the list is consumed programmatically:
e2engine get testsuites -o jsone2engine get testsuites -o yamlWithout table headers
Section titled “Without table headers”For table output, use --no-headers to omit column headings:
e2engine get testsuites --no-headersRun a TestSuite
Section titled “Run a TestSuite”Run a TestSuite against an Environment:
e2engine run testsuite <testsuite-ref> <env-ref>The TestSuite reference comes first, followed by the Environment reference.
For example:
e2engine run testsuite smoke payment-demoThe TestSuite selectors are resolved when the execution starts. The resolved Tests are then executed against the Environment.
The command creates a TestSuiteExecution and prints its ID:
created testsuite execution with id: <testsuite-execution-id>Use the TestSuiteExecution ID to inspect the execution and its current status.
Direct and socket execution
Section titled “Direct and socket execution”How the execution proceeds depends on the configured transport.
With transport.kind: direct, execution is synchronous. The run command waits for the TestSuite to finish before returning.
With transport.kind: socket, execution is asynchronous. The command creates the TestSuiteExecution and returns its ID while execution continues through the configured runner. The TestSuiteExecution and its child TestExecutions are updated as execution progresses.
In socket mode, retrieve the TestSuiteExecution to inspect its current state:
e2engine get testsuiteexecution <testsuite-execution-id>The TestSuiteExecution contains the aggregate result and its individual TestExecutions.
See Running a test suite for the execution lifecycle.
Quiet output
Section titled “Quiet output”Use --quiet or -q to print only the TestSuiteExecution ID:
e2engine run testsuite smoke payment-demo --quietThis is useful when a script needs to capture the execution ID for subsequent commands.
--verbose produces the same output as the default mode for run commands.
Delete a TestSuite
Section titled “Delete a TestSuite”Delete a TestSuite using its name or an ID prefix:
e2engine delete testsuite <ref>For example:
e2engine delete testsuite smokeOn success, the command confirms the deleted resource:
deleted testsuite, name: smoke id: <testsuite-id> version: 1.0.0Use --quiet to suppress the confirmation:
e2engine delete testsuite smoke --quietAliases
Section titled “Aliases”Singular TestSuite commands accept ts as a shorter alias:
e2engine validate ts testsuite.yamle2engine create ts testsuite.yamle2engine get ts smokee2engine run ts smoke payment-demoe2engine delete ts smokeThe plural get testsuites command does not define a shorter alias:
e2engine get testsuitesThe full testsuite and testsuites forms are used throughout this documentation for clarity.
Output formats
Section titled “Output formats”TestSuite commands use the global CLI output options:
-o, --output string Output format (available: table, json, yaml) --no-headers Omit headers in table output-q, --quiet Suppress non-error output-v, --verbose Enable verbose outputTable output is intended for interactive use, while JSON and YAML expose structured E2Engine data for inspection and automation.
See CLI for an overview of CLI conventions, Test suites for the TestSuite specification, and Inspecting results for interpreting TestSuiteExecution results.

