====== Test Case ====== [[dido:99_annexes:annex-b-terms-and-definitions:start|Go up to Terms and Definitions]] ===== Discussion ===== A Test Case specifies the [[dido:99_annexes:annex-b-terms-and-definitions:t:test_step|Test Steps]] and [[dido:99_annexes:annex-b-terms-and-definitions:e:expected_result|Expected Results]] used to verify a defined subject. As a [[dido:99_annexes:annex-b-terms-and-definitions:s:sequenced_test_object|Sequenced Test Object]], a Test Case can contain or reference a [[dido:99_annexes:annex-b-terms-and-definitions:t:test_sequence|Test Sequence]]. The Test Sequence establishes the order and progression of the [[dido:99_annexes:annex-b-terms-and-definitions:s:sequence_step|Sequence Steps]] associated with the Test Case. A Test Case can identify: * Its identity * Its name * Its [[dido:99_annexes:annex-b-terms-and-definitions:t:test_purpose|Test Purpose]] * Its version * The subject being verified * The applicable [[dido:99_annexes:annex-b-terms-and-definitions:t:test_item|Test Items]] * The applicable [[dido:99_annexes:annex-b-terms-and-definitions:s:system_under_test|System Under Test]] * The applicable [[dido:99_annexes:annex-b-terms-and-definitions:t:test_environment|Test Environments]] * The applicable Test Sequence * The applicable Test Steps * The applicable [[dido:99_annexes:annex-b-terms-and-definitions:t:test_executable|Test Executables]] * The applicable Test Arguments * The applicable Test Argument Values * The applicable Expected Results * The applicable entry conditions * The applicable completion conditions * The applicable evaluation criteria * The applicable [[dido:99_annexes:annex-b-terms-and-definitions:g:governance_policy|Governance Policies]] * Its [[dido:99_annexes:annex-b-terms-and-definitions:p:provenance|Provenance]] * Its [[dido:99_annexes:annex-b-terms-and-definitions:t:traceability|Traceability]] A Test Case can participate in one or more [[dido:99_annexes:annex-b-terms-and-definitions:t:test_set|Test Sets]]. A Test Case can reference reusable Test Steps and Test Executables without containing copies of them. Each [[dido:99_annexes:annex-b-terms-and-definitions:s:sequence_step|Sequence Step]] identifies the occurrence of a Test Step or Test Executable within the Test Sequence. ===== Definition ===== //[[dido:99_annexes:annex-b-terms-and-definitions:s:sequenced_test_object|Sequenced Test Object]] that specifies the [[dido:99_annexes:annex-b-terms-and-definitions:t:test_step|Test Steps]] and [[dido:99_annexes:annex-b-terms-and-definitions:e:expected_result|Expected Results]] used to verify a defined subject// ===== Source ===== Adapted from: * [[https://www.omg.org/spec/TestIF/1.0/Beta3/PDF|OMG Test Information Interchange Format (TestIF), Version 1.0 Beta 3, Section 7.3.5, TestCase]] * [[dido:99_annexes:annex-b-terms-and-definitions:t:test_object|Test Object]] * [[dido:99_annexes:annex-b-terms-and-definitions:s:sequenced_test_object|Sequenced Test Object]] * [[dido:99_annexes:annex-b-terms-and-definitions:t:test_set|Test Set]] * [[dido:99_annexes:annex-b-terms-and-definitions:t:test_step|Test Step]] * [[dido:99_annexes:annex-b-terms-and-definitions:t:test_sequence|Test Sequence]] * [[dido:99_annexes:annex-b-terms-and-definitions:e:expected_result|Expected Result]] * DIDO Reference Implementation Conceptual Model * DIDO-TE draft Requirements Register OMG TestIF defines TestCase as the set of steps necessary to verify something. TestIF permits a Test Case to contain any number of Test Steps organized through a Test Sequence. This definition preserves the TestIF verification purpose while identifying both Test Steps and Expected Results as essential characteristics of a Test Case. ===== Note ===== Every Test Case is a [[dido:99_annexes:annex-b-terms-and-definitions:s:sequenced_test_object|Sequenced Test Object]] and therefore a [[dido:99_annexes:annex-b-terms-and-definitions:t:test_object|Test Object]]. A Test Case differs from a [[dido:99_annexes:annex-b-terms-and-definitions:t:test_set|Test Set]]: * A Test Case specifies the Test Steps and Expected Results used to verify a defined subject * A Test Set groups related Test Objects for a defined Test Purpose A Test Case differs from a [[dido:99_annexes:annex-b-terms-and-definitions:t:test_step|Test Step]]: * A Test Case identifies the complete verification unit * A Test Step identifies one action or validation performed as part of a Test Sequence A Test Case differs from a [[dido:99_annexes:annex-b-terms-and-definitions:t:test_executable|Test Executable]]: * A Test Case specifies what the Test verifies * A Test Executable contains or references low-level procedural or executable information used for automated [[dido:99_annexes:annex-b-terms-and-definitions:t:test_execution|Test Execution]] A Test Case differs from a [[dido:99_annexes:annex-b-terms-and-definitions:t:test_result|Test Result]]: * A Test Case specifies the verification to perform * A Test Result records an outcome produced by Test Execution A Test Case differs from a [[dido:99_annexes:annex-b-terms-and-definitions:t:test_run|Test Run]]: * A Test Case specifies the verification unit * A Test Run records an identified execution and its Test Results A Test Case can reference more than one [[dido:99_annexes:annex-b-terms-and-definitions:t:test_item|Test Item]]. The applicable Test Definition identifies which Test Item or collection of Test Items constitutes the subject being verified. A change to the Test Purpose, Test Steps, Test Sequence, Expected Results, or evaluation criteria can create a new Test Case version when the change affects Test Execution, reproducibility, comparison, or validation. ===== Example ===== A [[dido:99_annexes:annex-b-terms-and-definitions:d:dido-te|DIDO-TE]] Test Case verifies that a proposed DIDO transaction produces the required successor state. The Test Case references: * The applicable [[dido:99_annexes:annex-b-terms-and-definitions:t:test_item|Test Items]] * The applicable [[dido:99_annexes:annex-b-terms-and-definitions:t:test_environment|Test Environment]] * A [[dido:99_annexes:annex-b-terms-and-definitions:t:test_sequence|Test Sequence]] * A Test Step that submits the transaction * A Test Step that observes transaction distribution * A Test Step that observes validation by the participating [[dido:99_annexes:annex-b-terms-and-definitions:n:node|Nodes]] * A Test Step that retrieves the resulting [[dido:99_annexes:annex-b-terms-and-definitions:d:dido|DIDO]] state * An Expected Result identifying the required successor state During Test Execution, the [[dido:99_annexes:annex-b-terms-and-definitions:t:test_run|Test Run]] records the Test Case version, execution context, and resulting [[dido:99_annexes:annex-b-terms-and-definitions:t:test_result|Test Results]]. ---- © 2026 Dido Solutions, Inc. and Jackrabbit Consulting, Inc.