Test Executable

Go up to Terms and Definitions

Discussion

A Test Executable contains or references executable instructions that implement a test action or validation.

As a Sequenced Test Object, a Test Executable can participate in a Test Sequence.

A Test Executable can implement an action or validation specified by a Test Step.

Executable instructions can include:

Source codeCompiled codeScriptsCommandsDeclarative automationTool-specific proceduresTest-framework instructionsExecutable modelsService requestsHardware-control instructionsReferences to externally maintained executable artifactsA Test Executable can identify:

Its identityIts nameIts descriptionIts versionIts executable instructionsIts executable typeIts language or formatIts entry pointIts applicable Test ArgumentsIts applicable Test Argument ValuesIts produced outputsIts applicable Expected ResultsIts required dependenciesIts required execution facilitiesIts applicable Test ItemsIts applicable Test EnvironmentsIts completion conditionIts failure conditionIts timeoutIts applicable Governance PoliciesIts ProvenanceIts TraceabilityA Sequence Step identifies the occurrence of a Test Executable at a particular position within a Test Sequence.

The same Test Executable can participate in multiple Test Sequences or occur more than once within the same Test Sequence.

Each Sequence Step can supply the applicable Test Argument Values and Expected Results for that occurrence.

Definition

Sequenced Test Object that contains or references executable instructions implementing a test action or validation

Source

Adapted from:

DIDO Reference Implementation Conceptual ModelDIDO-TE draft Requirements RegisterOMG TestIF defines TestExecutable as a SequencedTestObject used for low-level procedural definitions, including code and scripts intended for test automation.

This definition preserves that automation role while allowing the executable information to reside within the Test Executable or in an independently managed artifact referenced by it.

Note

Every Test Executable is a Sequenced Test Object and therefore a Test Object.

A Test Executable differs from a Test Step:

A Test Step specifies an action or validation independently of a particular execution mechanismA Test Executable contains or references the executable instructions implementing an action or validationA Test Step can have:

No Test Executable when a human or external process performs the Test StepOne Test Executable when one executable artifact implements the Test StepMultiple Test Executables when different tools, platforms, or Test Environments require different realizationsA Test Executable differs from a Sequence Step:

A Test Executable identifies reusable executable instructionsA Sequence Step identifies an occurrence of a Sequenced Test Object within a Test SequenceA Test Executable differs from a Test Result:

A Test Executable identifies the executable instructions used during Test ExecutionA Test Result records an outcome produced by Test ExecutionA Test Executable can define Test Arguments representing its input and output interface.

A Test Executable does not assign occurrence-specific values to those Test Arguments. A Sequence Step supplies the applicable Test Argument Values for a particular occurrence of the Test Executable within a Test Sequence.

A Test Executable can depend on a particular tool, programming language, operating system, processor architecture, or execution facility. The associated Test Step should remain independent of those implementation details when the action or validation can be expressed independently.

A change to the executable instructions, referenced artifact, dependency, entry point, Test Argument interface, or execution requirements can create a new Test Executable version.

A reproducible Test Run should identify:

The exact Test Executable identity and versionThe referenced executable artifactThe executable artifact digestThe applicable Test ArgumentsThe applicable Test Argument ValuesEvery executable dependency used during Test Execution

Example

A Test Case contains a Test Step requiring submission of a proposed DIDO transaction.

A Test Executable references a versioned script that:

Connects to the applicable NodeSubmits the proposed transactionRecords the transaction identifierReturns the submission statusThe Test Executable defines:

transaction as a required input Test ArgumenttargetNode as a required input Test ArgumentsubmissionIdentifier as an output Test ArgumentsubmissionStatus as an output Test ArgumentA Sequence Step references the Test Executable and supplies:

The proposed transaction as the Test Argument Value for transactionThe applicable Node identity as the Test Argument Value for targetNodeDuring Test Execution, the Test Run records:

The Test Executable identity and versionThe referenced executable artifactThe executable artifact digestThe input Test Argument ValuesThe output Test Argument ValuesThe applicable Test EnvironmentThe resulting Test ResultThe supporting Evidence

© 2026 Dido Solutions, Inc. and Jackrabbit Consulting, Inc.