| |
| dido:99_annexes:annex-b-terms-and-definitions:t:test_executable [2026/08/04 12:52] – created nick_dido | dido:99_annexes:annex-b-terms-and-definitions:t:test_executable [2026/08/04 13:01] (current) – nick_dido |
|---|
| * Its language or format | * Its language or format |
| * Its entry point | * Its entry point |
| * Its applicable Test Arguments | * Its applicable [[dido:99_annexes:annex-b-terms-and-definitions:t:test_argument|Test Arguments]] |
| * Its applicable Test Argument Values | * Its applicable [[dido:99_annexes:annex-b-terms-and-definitions:t:test_argument_value|Test Argument Values]] |
| * Its produced outputs | * Its produced outputs |
| * Its applicable [[dido:99_annexes:annex-b-terms-and-definitions:e:expected_result|Expected Results]] | * Its applicable [[dido:99_annexes:annex-b-terms-and-definitions:e:expected_result|Expected Results]] |
| * Its [[dido:99_annexes:annex-b-terms-and-definitions:t:traceability|Traceability]] | * Its [[dido:99_annexes:annex-b-terms-and-definitions:t:traceability|Traceability]] |
| |
| A [[dido:99_annexes:annex-b-terms-and-definitions:s:sequence_step|Sequence Step]] identifies the occurrence of a Test Executable at a particular position within a Test Sequence. | A [[dido:99_annexes:annex-b-terms-and-definitions:s:sequence_step|Sequence Step]] identifies the occurrence of a Test Executable at a particular position within a [[dido:99_annexes:annex-b-terms-and-definitions:t:test_sequence|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. | The same Test Executable can participate in multiple [[dido:99_annexes:annex-b-terms-and-definitions:t:test_sequence|Test Sequences]] or occur more than once within the same Test Sequence. |
| | |
| | Each Sequence Step can supply the applicable [[dido:99_annexes:annex-b-terms-and-definitions:t:test_argument_value|Test Argument Values]] and [[dido:99_annexes:annex-b-terms-and-definitions:e:expected_result|Expected Results]] for that occurrence. |
| |
| ===== Definition ===== | ===== Definition ===== |
| * [[dido:99_annexes:annex-b-terms-and-definitions:t:test_sequence|Test Sequence]] | * [[dido:99_annexes:annex-b-terms-and-definitions:t:test_sequence|Test Sequence]] |
| * [[dido:99_annexes:annex-b-terms-and-definitions:s:sequence_step|Sequence Step]] | * [[dido:99_annexes:annex-b-terms-and-definitions:s:sequence_step|Sequence Step]] |
| | * [[dido:99_annexes:annex-b-terms-and-definitions:t:test_argument|Test Argument]] |
| | * [[dido:99_annexes:annex-b-terms-and-definitions:t:test_argument_value|Test Argument Value]] |
| * DIDO Reference Implementation Conceptual Model | * DIDO Reference Implementation Conceptual Model |
| * DIDO-TE draft Requirements Register | * DIDO-TE draft Requirements Register |
| A Test Executable differs from a [[dido:99_annexes:annex-b-terms-and-definitions:t:test_step|Test Step]]: | A Test Executable differs from a [[dido:99_annexes:annex-b-terms-and-definitions:t:test_step|Test Step]]: |
| |
| * A Test Step specifies an action or validation independently of a particular execution mechanism | * A [[dido:99_annexes:annex-b-terms-and-definitions:t:test_step|Test Step]] specifies an action or validation independently of a particular execution mechanism |
| * A Test Executable contains or references the executable instructions implementing an action or validation | * A Test Executable contains or references the executable instructions implementing an action or validation |
| |
| |
| * A Test Executable identifies reusable executable instructions | * A Test Executable identifies reusable executable instructions |
| * A Sequence Step identifies an occurrence of a Sequenced Test Object within a Test Sequence | * A [[dido:99_annexes:annex-b-terms-and-definitions:s:sequence_step|Sequence Step]] identifies an occurrence of a [[dido:99_annexes:annex-b-terms-and-definitions:s:sequenced_test_object|Sequenced Test Object]] within a [[dido:99_annexes:annex-b-terms-and-definitions:t:test_sequence|Test Sequence]] |
| |
| A Test Executable differs from a [[dido:99_annexes:annex-b-terms-and-definitions:t:test_result|Test Result]]: | A Test Executable differs from a [[dido:99_annexes:annex-b-terms-and-definitions:t:test_result|Test Result]]: |
| |
| * A Test Executable identifies the executable instructions used during [[dido:99_annexes:annex-b-terms-and-definitions:t:test_execution|Test Execution]] | * A Test Executable identifies the executable instructions used during [[dido:99_annexes:annex-b-terms-and-definitions:t:test_execution|Test Execution]] |
| * A Test Result records an outcome produced by Test Execution | * A [[dido:99_annexes:annex-b-terms-and-definitions:t:test_result|Test Result]] records an outcome produced by Test Execution |
| |
| 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 Test Executable can define [[dido:99_annexes:annex-b-terms-and-definitions:t:test_argument|Test Arguments]] representing its input and output interface. |
| |
| 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 Test Executable does not assign occurrence-specific values to those Test Arguments. A [[dido:99_annexes:annex-b-terms-and-definitions:s:sequence_step|Sequence Step]] supplies the applicable [[dido:99_annexes:annex-b-terms-and-definitions:t:test_argument_value|Test Argument Values]] for a particular occurrence of the Test Executable within a [[dido:99_annexes:annex-b-terms-and-definitions:t:test_sequence|Test Sequence]]. |
| |
| A reproducible [[dido:99_annexes:annex-b-terms-and-definitions:t:test_run|Test Run]] should identify the exact Test Executable version and every executable dependency used during Test Execution. | A Test Executable can depend on a particular tool, programming language, operating system, processor architecture, or execution facility. The associated [[dido:99_annexes:annex-b-terms-and-definitions:t:test_step|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, [[dido:99_annexes:annex-b-terms-and-definitions:t:test_argument|Test Argument]] interface, or execution requirements can create a new Test Executable version. |
| | |
| | A reproducible [[dido:99_annexes:annex-b-terms-and-definitions:t:test_run|Test Run]] should identify: |
| | |
| | * The exact Test Executable identity and version |
| | * The referenced executable artifact |
| | * The executable artifact digest |
| | * The applicable [[dido:99_annexes:annex-b-terms-and-definitions:t:test_argument|Test Arguments]] |
| | * The applicable [[dido:99_annexes:annex-b-terms-and-definitions:t:test_argument_value|Test Argument Values]] |
| | * Every executable dependency used during [[dido:99_annexes:annex-b-terms-and-definitions:t:test_execution|Test Execution]] |
| |
| ===== Example ===== | ===== Example ===== |
| |
| A [[dido:99_annexes:annex-b-terms-and-definitions:t:test_case|Test Case]] contains a Test Step requiring submission of a proposed DIDO transaction. | A [[dido:99_annexes:annex-b-terms-and-definitions:t:test_case|Test Case]] contains a [[dido:99_annexes:annex-b-terms-and-definitions:t:test_step|Test Step]] requiring submission of a proposed [[dido:99_annexes:annex-b-terms-and-definitions:d:dido|DIDO]] transaction. |
| |
| A Test Executable references a versioned script that: | A Test Executable references a versioned script that: |
| * Returns the submission status | * Returns the submission status |
| |
| A [[dido:99_annexes:annex-b-terms-and-definitions:s:sequence_step|Sequence Step]] references the Test Executable and supplies the transaction as a Test Argument Value. | The Test Executable defines: |
| | |
| | * ''transaction'' as a required input [[dido:99_annexes:annex-b-terms-and-definitions:t:test_argument|Test Argument]] |
| | * ''targetNode'' as a required input [[dido:99_annexes:annex-b-terms-and-definitions:t:test_argument|Test Argument]] |
| | * ''submissionIdentifier'' as an output [[dido:99_annexes:annex-b-terms-and-definitions:t:test_argument|Test Argument]] |
| | * ''submissionStatus'' as an output [[dido:99_annexes:annex-b-terms-and-definitions:t:test_argument|Test Argument]] |
| | |
| | A [[dido:99_annexes:annex-b-terms-and-definitions:s:sequence_step|Sequence Step]] references the Test Executable and supplies: |
| | |
| | * The proposed transaction as the [[dido:99_annexes:annex-b-terms-and-definitions:t:test_argument_value|Test Argument Value]] for ''transaction'' |
| | * The applicable [[dido:99_annexes:annex-b-terms-and-definitions:n:node|Node]] identity as the Test Argument Value for ''targetNode'' |
| |
| During Test Execution, the [[dido:99_annexes:annex-b-terms-and-definitions:t:test_run|Test Run]] records: | During [[dido:99_annexes:annex-b-terms-and-definitions:t:test_execution|Test Execution]], the [[dido:99_annexes:annex-b-terms-and-definitions:t:test_run|Test Run]] records: |
| |
| * The Test Executable identity and version | * The Test Executable identity and version |
| * The referenced executable artifact | * The referenced executable artifact |
| * The executable artifact digest | * The executable artifact digest |
| * The Test Argument Values | * The input [[dido:99_annexes:annex-b-terms-and-definitions:t:test_argument_value|Test Argument Values]] |
| * The applicable Test Environment | * The output [[dido:99_annexes:annex-b-terms-and-definitions:t:test_argument_value|Test Argument Values]] |
| | * The applicable [[dido:99_annexes:annex-b-terms-and-definitions:t:test_environment|Test Environment]] |
| * The resulting [[dido:99_annexes:annex-b-terms-and-definitions:t:test_result|Test Result]] | * The resulting [[dido:99_annexes:annex-b-terms-and-definitions:t:test_result|Test Result]] |
| * The supporting [[dido:99_annexes:annex-b-terms-and-definitions:e:evidence|Evidence]] | * The supporting [[dido:99_annexes:annex-b-terms-and-definitions:e:evidence|Evidence]] |