Skip to content

Execution commands

The CLI provides commands for inspecting and managing execution records produced by Test and TestSuite runs.

e2engine get testexecution
e2engine get testexecutions
e2engine delete testexecution
e2engine check testexecution
e2engine get testsuiteexecution
e2engine get testsuiteexecutions
e2engine delete testsuiteexecution
e2engine check testsuiteexecution

TestExecutions are created by e2engine run test, while TestSuiteExecutions are created by e2engine run testsuite.

For the execution model and statuses, see Executions.

A TestExecution records the result of running a Test against an Environment.

It contains the execution status, references to the Environment and Test, timing information, and the detailed execution result.

Retrieve a TestExecution using an ID prefix:

Terminal window
e2engine get testexecution <ref>

For example:

Terminal window
e2engine get testexecution a8bafcd698c2

The default table output provides a compact view of the execution.

Use YAML or JSON to retrieve the complete structured result:

Terminal window
e2engine get testexecution a8bafcd698c2 -o yaml
Terminal window
e2engine get testexecution a8bafcd698c2 -o json

Structured output includes the execution summary, such as the request, response, expectations, observed calls, deviations, and execution error when present.

See Inspecting results for guidance on interpreting these fields.

List stored TestExecutions using the plural command:

Terminal window
e2engine get testexecutions

The default output is a table:

ID STATUS STARTED FINISHED ENVIRONMENT_ID ENVIRONMENT_NAME TEST_ID TEST_NAME
------------ ------ --------------------------- --------------------------- -------------- ---------------- ------------ ------------------
a8bafcd698c2 passed 2026-09-27T11:52:14.77555Z 2026-09-27T11:52:14.897169Z 8c18c6df3133 payment-demo f80d87062437 successful-payment
06b833ae2dce passed 2026-09-27T11:52:14.77553Z 2026-09-27T11:52:14.794475Z 8c18c6df3133 payment-demo 37f48bf91fd8 account-rejection
575f3452d6de passed 2026-09-27T11:52:14.775475Z 2026-09-27T11:52:14.78226Z 8c18c6df3133 payment-demo 4746ba6a4b8f fraud-rejection

The table contains:

Column Description
ID Compact TestExecution ID
STATUS Current or final execution status
STARTED Time execution started
FINISHED Time execution finished
ENVIRONMENT_ID Compact ID of the Environment
ENVIRONMENT_NAME Environment name
TEST_ID Compact ID of the Test
TEST_NAME Test name

An execution that is still in progress may not yet have a final status or finish time.

Use --limit to restrict the maximum number of TestExecutions returned:

Terminal window
e2engine get testexecutions --limit 20

Values above the configured maximum are capped automatically.

TestExecutions can be ordered by:

id
status
startedAt
finishedAt

For example:

Terminal window
e2engine get testexecutions --order-by startedAt

Select ascending or descending order with --order-direction:

Terminal window
e2engine get testexecutions \
--order-by startedAt \
--order-direction desc

Use JSON or YAML when execution records are consumed programmatically:

Terminal window
e2engine get testexecutions -o json
Terminal window
e2engine get testexecutions -o yaml

For table output, use --no-headers to omit column headings:

Terminal window
e2engine get testexecutions --no-headers

Wait for a TestExecution to complete and check its result using an ID prefix:

Terminal window
e2engine check testexecution <ref>

For example:

Terminal window
e2engine check testexecution a8b

If the execution is still scheduled or running, the command waits until it reaches a terminal status or the configured timeout expires.

A passed execution returns successfully and prints its status:

status: passed

If the execution finishes with failed or error, the command returns a non-zero exit code. This makes check suitable for CI/CD pipelines and other automation that needs to wait for an execution and determine whether it passed.

Use --timeout to override the configured execution check timeout for a single command:

Terminal window
e2engine check testexecution a8b --timeout 60s

The default timeout is configured with runtime.execution_check_timeout or the E2ENGINE_RUNTIME_EXECUTION_CHECK_TIMEOUT environment variable.

The command supports the standard output formats. YAML is the default object output:

Terminal window
e2engine check testexecution a8b -o yaml
status: passed

Use JSON:

Terminal window
e2engine check testexecution a8b -o json
{
"status": "passed"
}

Or table output:

Terminal window
e2engine check testexecution a8b -o table
FIELD VALUE
------ ------
status passed

Use --quiet when only the process exit code is needed:

Terminal window
e2engine check testexecution a8b --quiet

The shorter te alias can also be used:

Terminal window
e2engine check te a8b

Delete a TestExecution using an ID prefix:

Terminal window
e2engine delete testexecution <id>

For example:

Terminal window
e2engine delete testexecution a8bafcd698c2

On success, the command prints:

deleted test execution with id: <test-execution-id>

Use --quiet to suppress the confirmation:

Terminal window
e2engine delete testexecution a8bafcd698c2 --quiet

A TestSuiteExecution records the result of running a TestSuite against an Environment.

It represents the suite as a whole and aggregates the results of the individual TestExecutions created for the Tests selected by the suite.

Retrieve a TestSuiteExecution using an ID prefix:

Terminal window
e2engine get testsuiteexecution <ref>

For example:

Terminal window
e2engine get testsuiteexecution b803690aa89a

The default table output provides a compact view of the execution.

Use YAML or JSON to retrieve the complete structured result:

Terminal window
e2engine get testsuiteexecution b803690aa89a -o yaml
Terminal window
e2engine get testsuiteexecution b803690aa89a -o json

Structured output includes the suite summary and its individual TestExecutions.

See Inspecting results for guidance on interpreting TestSuiteExecution results.

List stored TestSuiteExecutions using the plural command:

Terminal window
e2engine get testsuiteexecutions

The default output is a table:

ID STATUS STARTED FINISHED TESTSUITE_ID TESTSUITE_NAME TESTS ENVIRONMENT_ID ENVIRONMENT_NAME
------------ ------ --------------------------- --------------------------- ------------ -------------- ----- -------------- ----------------
b803690aa89a passed 2026-09-27T11:52:14.775282Z 2026-09-27T11:52:14.897169Z 5e28a426d44f smoke 3 8c18c6df3133 payment-demo

The table contains:

Column Description
ID Compact TestSuiteExecution ID
STATUS Current or final suite status
STARTED Time suite execution started
FINISHED Time suite execution finished
TESTSUITE_ID Compact ID of the TestSuite
TESTSUITE_NAME TestSuite name
TESTS Number of Tests in the execution
ENVIRONMENT_ID Compact ID of the Environment
ENVIRONMENT_NAME Environment name

While a suite is running, its status and the statuses of its individual TestExecutions are updated as execution progresses.

Use --limit to restrict the maximum number of TestSuiteExecutions returned:

Terminal window
e2engine get testsuiteexecutions --limit 20

Values above the configured maximum are capped automatically.

TestSuiteExecutions can be ordered by:

id
status
startedAt
finishedAt

For example:

Terminal window
e2engine get testsuiteexecutions --order-by startedAt

Select ascending or descending order with --order-direction:

Terminal window
e2engine get testsuiteexecutions \
--order-by startedAt \
--order-direction desc

Use JSON or YAML when execution records are consumed programmatically:

Terminal window
e2engine get testsuiteexecutions -o json
Terminal window
e2engine get testsuiteexecutions -o yaml

For table output, use --no-headers to omit column headings:

Terminal window
e2engine get testsuiteexecutions --no-headers

Wait for a TestSuiteExecution to complete and check its result using an ID prefix:

Terminal window
e2engine check testsuiteexecution <ref>

For example:

Terminal window
e2engine check testsuiteexecution b803

If the execution is still scheduled or running, the command waits until it reaches a terminal status or the configured timeout expires.

A passed execution returns successfully and prints its status:

status: passed

If the execution finishes with failed or error, the command returns a non-zero exit code. This makes check suitable for CI/CD pipelines and other automation that needs to wait for a suite execution and determine whether it passed.

Use --timeout to override the configured execution check timeout for a single command:

Terminal window
e2engine check testsuiteexecution b803 --timeout 60s

The default timeout is configured with runtime.execution_check_timeout or the E2ENGINE_RUNTIME_EXECUTION_CHECK_TIMEOUT environment variable.

The command supports the standard output formats. YAML is the default object output:

Terminal window
e2engine check testsuiteexecution b803 -o yaml
status: passed

Use JSON:

Terminal window
e2engine check testsuiteexecution b803 -o json
{
"status": "passed"
}

Or table output:

Terminal window
e2engine check testsuiteexecution b803 -o table
FIELD VALUE
------ ------
status passed

Use --quiet when only the process exit code is needed:

Terminal window
e2engine check testsuiteexecution b803 --quiet

The shorter tse alias can also be used:

Terminal window
e2engine check tse b803

Delete a TestSuiteExecution using an ID prefix:

Terminal window
e2engine delete testsuiteexecution <id>

For example:

Terminal window
e2engine delete testsuiteexecution b803690aa89a

On success, the command prints:

deleted testsuite execution with id: <testsuite-execution-id>

Use --quiet to suppress the confirmation:

Terminal window
e2engine delete testsuiteexecution b803690aa89a --quiet

Singular TestExecution commands accept te as a shorter alias:

Terminal window
e2engine get te a8bafcd698c2
e2engine delete te a8bafcd698c2

Singular TestSuiteExecution commands accept tse:

Terminal window
e2engine get tse b803690aa89a
e2engine delete tse b803690aa89a

The plural commands do not define shorter aliases:

Terminal window
e2engine get testexecutions
e2engine get testsuiteexecutions

The full command names are used throughout this documentation for clarity.

Execution 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 output

Table output provides a compact view of execution metadata and status.

JSON and YAML expose the complete execution models, including detailed TestExecution results and TestSuiteExecution summaries.

See Executions for the execution model, Running a test and Running a test suite for how executions are produced, and Inspecting results for interpreting execution results.