This page is part of the HL7 Tools Extension IG (v0.4.1: Releases - Informative) based on FHIR (HL7® FHIR® Standard) v5.0.0. This is the current published version in its permanent home (it will always be available at this URL). For a full list of available versions, see the Directory of published versions
Page standards status: Informative | Maturity Level: 3 |
Definitions for the TestCases logical model.
Guidance on how to interpret the contents of this table can be found here
0. TestCases | |
Definition | A set of tests that are executed by some runner to test the functionality of a tool in the FHIR ecosystem This is the base resource type for everything. |
Short | Test Suite - set of tests executed by a runnerBase Resource |
Control | 0..* |
Is Modifier | false |
Must Support | false |
Logical Model | Instances of this logical model are not marked to be the target of a Reference |
Summary | false |
2. TestCases.id | |
Definition | The logical id of the resource, as used in the URL for the resource. Once assigned, this value never changes. |
Short | Logical id of this artifact |
Comments | Within the context of the FHIR RESTful interactions, the resource has an id except for cases like the create and conditional update. Otherwise, the use of the resouce id depends on the given use case. |
Control | 0..1 |
Type | id |
Is Modifier | false |
Must Support | false |
Summary | true |
4. TestCases.meta | |
Definition | The metadata about the resource. This is content that is maintained by the infrastructure. Changes to the content might not always be associated with version changes to the resource. |
Short | Metadata about the resource |
Control | 0..1 |
Type | Meta |
Is Modifier | false |
Must Support | false |
Summary | true |
Invariants | ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count())) |
6. TestCases.implicitRules | |
Definition | A reference to a set of rules that were followed when the resource was constructed, and which must be understood when processing the content. Often, this is a reference to an implementation guide that defines the special rules along with other profiles etc. |
Short | A set of rules under which this content was created |
Comments | Asserting this rule set restricts the content to be only understood by a limited set of trading partners. This inherently limits the usefulness of the data in the long term. However, the existing health eco-system is highly fractured, and not yet ready to define, collect, and exchange data in a generally computable sense. Wherever possible, implementers and/or specification writers should avoid using this element. Often, when used, the URL is a reference to an implementation guide that defines these special rules as part of its narrative along with other profiles, value sets, etc. |
Control | 0..1 |
Type | uri |
Is Modifier | true because This element is labeled as a modifier because the implicit rules may provide additional knowledge about the resource that modifies its meaning or interpretation |
Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
Must Support | false |
Summary | true |
Invariants | ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count())) |
8. TestCases.language | |
Definition | The base language in which the resource is written. |
Short | Language of the resource content |
Comments | Language is provided to support indexing and accessibility (typically, services such as text to speech use the language tag). The html language tag in the narrative applies to the narrative. The language tag on the resource may be used to specify the language of other presentations generated from the data in the resource. Not all the content has to be in the base language. The Resource.language should not be assumed to apply to the narrative automatically. If a language is specified, it should it also be specified on the div element in the html (see rules in HTML5 for information about the relationship between xml:lang and the html lang attribute). |
Control | 0..1 |
Binding | The codes SHALL be taken from AllLanguageshttp://hl7.org/fhir/ValueSet/all-languages|5.0.0 (required to http://hl7.org/fhir/ValueSet/all-languages|5.0.0 )IETF language tag for a human language |
Type | code |
Is Modifier | false |
Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
Must Support | false |
Summary | false |
Invariants | ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count())) |
10. TestCases.url | |
Definition | An absolute URI that is used to identify test tests. |
Short | Canonical identifier for these tests, represented as a URI (globally unique) |
Control | 0..1 |
Type | uri |
Is Modifier | false |
Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
Summary | true |
Invariants | cnl-1: URL should not contain | or # - these characters make processing canonical references problematic (exists() implies matches('^[^|# ]+$') ) |
12. TestCases.version | |
Definition | The identifier that is used to identify this version of these tests. Version must use SemVer |
Short | Business version of the test set (semver) |
Note | This is a business version Id, not a resource version Id (see discussion) |
Control | 0..1 |
Type | string |
Is Modifier | false |
Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
Summary | true |
14. TestCases.name | |
Definition | A natural language name identifying the tests. This name should be usable as an identifier for the module by machine processing applications such as code generation. |
Short | Name for these tests |
Control | 0..1 |
Type | string |
Is Modifier | false |
Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
Summary | true |
16. TestCases.description | |
Definition | General description of these teats. |
Short | General Description of these tests |
Control | 0..1 |
Type | markdown |
Is Modifier | false |
Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
Summary | true |
18. TestCases.runner | |
Definition | URL of documentation that explains how a runner would read these tests, and use them to actually test out a tool. |
Short | URL Documentation for a runner that executes these tests |
Control | 1..1 |
Type | url |
Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
20. TestCases.mode | |
Definition | A mode that can be passed to a runner running these these tests, that affects test content and influences how the tests are executed or evaulated (or even if they run) |
Short | A mode that can be passed to runner - affects test content |
Control | 0..* |
Type | Base |
22. TestCases.mode.code | |
Definition | The code by which the mode is identified when passed to runner |
Short | The code that identifies the mode |
Control | 1..1 |
Type | string |
Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
24. TestCases.mode.description | |
Definition | Description of what this mode does / why it was defined. This should explain to a tester when they should use the mode |
Short | Description of what this mode exists / why it was defined |
Control | 0..1 |
Type | string |
Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
26. TestCases.suite | |
Definition | A suite of tests that all share a common set up, and can be executed as a group |
Short | A suite of tests that share a common set up |
Control | 0..* |
Type | Base |
28. TestCases.suite.name | |
Definition | The name by which this suite is known by in the test system. The name must be unique in the amongst the suites |
Short | The name of this suite - unique in the TestCases resource |
Control | 1..1 |
Type | string |
Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
30. TestCases.suite.description | |
Definition | Description of what this suite does / why it was defined. This should explain to a tester what they should know when deciding which tests to run |
Short | Description of what this suite does / why it was defined |
Control | 0..1 |
Type | string |
Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
32. TestCases.suite.mode | |
Definition | If this mode is not passed to the runner, then this suite will not be run |
Short | mode required to run this suite |
Control | 0..1 |
Type | code |
Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
Meaning if Missing | If no modes are listed, the suite is always executed |
34. TestCases.suite.setup | |
Definition | The resources used in the tests in this suite. How exactly they are used depends on the definition of the runner |
Short | Resources used in the tests in this suite |
Control | 0..* |
Type | Base |
Invariants | ts-2: Either a file, or a resource, but not both (file xor resource ) |
36. TestCases.suite.setup.name | |
Definition | A name that identifies this resource. The runner definition defines whether there must be a name, and what names there are |
Short | A name for this resource (per runner definition) |
Control | 0..1 |
Type | string |
Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
38. TestCases.suite.setup.file | |
Definition | A file containing a resource used in the tests |
Short | A file containing a resource used in the tests |
Comments | Filename is relative to the folder/directory containing this TestCases |
Control | 0..1 |
Type | string |
Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
40. TestCases.suite.setup.resource | |
Definition | An inline resource used in the tests. How exactly it is used depends on the definition of the runner. |
Short | An inline resource used in the tests |
Control | 0..1 |
Type | Resource |
42. TestCases.suite.setup.mode | |
Definition | If this mode is not passed to the runner, then this resource will not be used |
Short | A mode that must be true for this resource to be used |
Control | 0..1 |
Type | code |
Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
Meaning if Missing | If no modes are listed, the resource is always used |
44. TestCases.suite.test | |
Definition | An actual test in the test suite |
Short | A test in the test suite |
Control | 0..* |
Type | Base |
46. TestCases.suite.test.name | |
Definition | The name by which this test is known by in the test system. The name must be unique in the suite |
Short | The name of this test - unique in the suite |
Control | 1..1 |
Type | string |
Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
48. TestCases.suite.test.description | |
Definition | Description of what this test does / why it was defined. This should explain to a tester what they should know when looking at failing test results |
Short | Description of what this test does / why it was defined |
Control | 0..1 |
Type | string |
Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
50. TestCases.suite.test.operation | |
Definition | A code that identifies the operation executed for this test. One of the codes defined in the definition of the runner |
Short | Operation that is executed during this test (per definition of runner) |
Control | 0..1 |
Type | code |
Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
52. TestCases.suite.test.mode | |
Definition | If this mode is not passed to the runner, then this test will not be run |
Short | mode required to run this test |
Control | 0..1 |
Type | string |
Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
Meaning if Missing | If no modes are listed, the test is always executed |
54. TestCases.suite.test.parameter | |
Definition | A parameter passed to the runner when executing this test. Which parameters are valid, and how exactly the parameter is used are used depends on the definition of the runner |
Short | Parameter passed to the runner |
Control | 0..* |
Type | Base |
56. TestCases.suite.test.parameter.name | |
Definition | Name of parameter |
Short | Name of parameter |
Control | 1..1 |
Type | string |
Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
58. TestCases.suite.test.parameter.value[x] | |
Definition | The value of the parameter |
Short | Value of this parameter |
Control | 1..1 |
Type | Choice of: string, boolean, integer, decimal, dateTime, uri, Coding, Quantity |
[x] Note | SeeChoice of Data Typesfor further information about how to use [x] |
Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
60. TestCases.suite.test.parameter.mode | |
Definition | If this mode is not passed to the runner, then this parameter will not be used |
Short | A mode that must be true for this parameter to be used |
Control | 0..1 |
Type | code |
Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
Meaning if Missing | If no modes are listed, the parameter is always used |
62. TestCases.suite.test.input | |
Definition | The resources used when executing this test. How exactly they are used depends on the definition of the runner. |
Short | Resources used when executing this test (per runner definition) |
Control | 0..* |
Type | Seettp://hl7.org/fhir/tools/StructureDefinition/TestCases#TestCases.suite.setup |
64. TestCases.suite.test.output | |
Definition | Resources expected as output from this test. Often, but not always, these resources are Matchetype resources. How exactly it is used depends on the definition of the runner |
Short | Resources expected as output from this test (per runner definition, often Matchetypes) |
Control | 0..* |
Type | Seettp://hl7.org/fhir/tools/StructureDefinition/TestCases#TestCases.suite.setup |
Guidance on how to interpret the contents of this table can be found here
0. TestCases | |
Definition | A set of tests that are executed by some runner to test the functionality of a tool in the FHIR ecosystem |
Short | Test Suite - set of tests executed by a runner |
Logical Model | Instances of this logical model are not marked to be the target of a Reference |
2. TestCases.url | |
Definition | An absolute URI that is used to identify test tests. |
Short | Canonical identifier for these tests, represented as a URI (globally unique) |
Control | 0..1 |
Type | uri |
Is Modifier | false |
Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
Invariants | cnl-1: URL should not contain | or # - these characters make processing canonical references problematic (exists() implies matches('^[^|# ]+$') ) |
4. TestCases.version | |
Definition | The identifier that is used to identify this version of these tests. Version must use SemVer |
Short | Business version of the test set (semver) |
Note | This is a business version Id, not a resource version Id (see discussion) |
Control | 0..1 |
Type | string |
Is Modifier | false |
Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
6. TestCases.name | |
Definition | A natural language name identifying the tests. This name should be usable as an identifier for the module by machine processing applications such as code generation. |
Short | Name for these tests |
Control | 0..1 |
Type | string |
Is Modifier | false |
Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
8. TestCases.description | |
Definition | General description of these teats. |
Short | General Description of these tests |
Control | 0..1 |
Type | markdown |
Is Modifier | false |
Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
10. TestCases.runner | |
Definition | URL of documentation that explains how a runner would read these tests, and use them to actually test out a tool. |
Short | URL Documentation for a runner that executes these tests |
Control | 1..1 |
Type | url |
Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
12. TestCases.mode | |
Definition | A mode that can be passed to a runner running these these tests, that affects test content and influences how the tests are executed or evaulated (or even if they run) |
Short | A mode that can be passed to runner - affects test content |
Control | 0..* |
Type | Base |
14. TestCases.mode.code | |
Definition | The code by which the mode is identified when passed to runner |
Short | The code that identifies the mode |
Control | 1..1 |
Type | string |
Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
16. TestCases.mode.description | |
Definition | Description of what this mode does / why it was defined. This should explain to a tester when they should use the mode |
Short | Description of what this mode exists / why it was defined |
Control | 0..1 |
Type | string |
Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
18. TestCases.suite | |
Definition | A suite of tests that all share a common set up, and can be executed as a group |
Short | A suite of tests that share a common set up |
Control | 0..* |
Type | Base |
20. TestCases.suite.name | |
Definition | The name by which this suite is known by in the test system. The name must be unique in the amongst the suites |
Short | The name of this suite - unique in the TestCases resource |
Control | 1..1 |
Type | string |
Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
22. TestCases.suite.description | |
Definition | Description of what this suite does / why it was defined. This should explain to a tester what they should know when deciding which tests to run |
Short | Description of what this suite does / why it was defined |
Control | 0..1 |
Type | string |
Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
24. TestCases.suite.mode | |
Definition | If this mode is not passed to the runner, then this suite will not be run |
Short | mode required to run this suite |
Control | 0..1 |
Type | code |
Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
Meaning if Missing | If no modes are listed, the suite is always executed |
26. TestCases.suite.setup | |
Definition | The resources used in the tests in this suite. How exactly they are used depends on the definition of the runner |
Short | Resources used in the tests in this suite |
Control | 0..* |
Type | Base |
Invariants | ts-2: Either a file, or a resource, but not both (file xor resource ) |
28. TestCases.suite.setup.name | |
Definition | A name that identifies this resource. The runner definition defines whether there must be a name, and what names there are |
Short | A name for this resource (per runner definition) |
Control | 0..1 |
Type | string |
Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
30. TestCases.suite.setup.file | |
Definition | A file containing a resource used in the tests |
Short | A file containing a resource used in the tests |
Comments | Filename is relative to the folder/directory containing this TestCases |
Control | 0..1 |
Type | string |
Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
32. TestCases.suite.setup.resource | |
Definition | An inline resource used in the tests. How exactly it is used depends on the definition of the runner. |
Short | An inline resource used in the tests |
Control | 0..1 |
Type | Resource |
34. TestCases.suite.setup.mode | |
Definition | If this mode is not passed to the runner, then this resource will not be used |
Short | A mode that must be true for this resource to be used |
Control | 0..1 |
Type | code |
Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
Meaning if Missing | If no modes are listed, the resource is always used |
36. TestCases.suite.test | |
Definition | An actual test in the test suite |
Short | A test in the test suite |
Control | 0..* |
Type | Base |
38. TestCases.suite.test.name | |
Definition | The name by which this test is known by in the test system. The name must be unique in the suite |
Short | The name of this test - unique in the suite |
Control | 1..1 |
Type | string |
Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
40. TestCases.suite.test.description | |
Definition | Description of what this test does / why it was defined. This should explain to a tester what they should know when looking at failing test results |
Short | Description of what this test does / why it was defined |
Control | 0..1 |
Type | string |
Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
42. TestCases.suite.test.operation | |
Definition | A code that identifies the operation executed for this test. One of the codes defined in the definition of the runner |
Short | Operation that is executed during this test (per definition of runner) |
Control | 0..1 |
Type | code |
Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
44. TestCases.suite.test.mode | |
Definition | If this mode is not passed to the runner, then this test will not be run |
Short | mode required to run this test |
Control | 0..1 |
Type | string |
Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
Meaning if Missing | If no modes are listed, the test is always executed |
46. TestCases.suite.test.parameter | |
Definition | A parameter passed to the runner when executing this test. Which parameters are valid, and how exactly the parameter is used are used depends on the definition of the runner |
Short | Parameter passed to the runner |
Control | 0..* |
Type | Base |
48. TestCases.suite.test.parameter.name | |
Definition | Name of parameter |
Short | Name of parameter |
Control | 1..1 |
Type | string |
Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
50. TestCases.suite.test.parameter.value[x] | |
Definition | The value of the parameter |
Short | Value of this parameter |
Control | 1..1 |
Type | Choice of: string, boolean, integer, decimal, dateTime, uri, Coding, Quantity |
[x] Note | SeeChoice of Data Typesfor further information about how to use [x] |
Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
52. TestCases.suite.test.parameter.mode | |
Definition | If this mode is not passed to the runner, then this parameter will not be used |
Short | A mode that must be true for this parameter to be used |
Control | 0..1 |
Type | code |
Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
Meaning if Missing | If no modes are listed, the parameter is always used |
54. TestCases.suite.test.input | |
Definition | The resources used when executing this test. How exactly they are used depends on the definition of the runner. |
Short | Resources used when executing this test (per runner definition) |
Control | 0..* |
Type | Seettp://hl7.org/fhir/tools/StructureDefinition/TestCases#TestCases.suite.setup |
56. TestCases.suite.test.output | |
Definition | Resources expected as output from this test. Often, but not always, these resources are Matchetype resources. How exactly it is used depends on the definition of the runner |
Short | Resources expected as output from this test (per runner definition, often Matchetypes) |
Control | 0..* |
Type | Seettp://hl7.org/fhir/tools/StructureDefinition/TestCases#TestCases.suite.setup |
Guidance on how to interpret the contents of this table can be found here
0. TestCases | |
Definition | A set of tests that are executed by some runner to test the functionality of a tool in the FHIR ecosystem |
Short | Test Suite - set of tests executed by a runner |
Control | 0..* |
Is Modifier | false |
Must Support | false |
Logical Model | Instances of this logical model are not marked to be the target of a Reference |
Summary | false |
2. TestCases.id | |
Definition | The logical id of the resource, as used in the URL for the resource. Once assigned, this value never changes. |
Short | Logical id of this artifact |
Comments | Within the context of the FHIR RESTful interactions, the resource has an id except for cases like the create and conditional update. Otherwise, the use of the resouce id depends on the given use case. |
Control | 0..1 |
Type | id |
Is Modifier | false |
Must Support | false |
Summary | true |
4. TestCases.meta | |
Definition | The metadata about the resource. This is content that is maintained by the infrastructure. Changes to the content might not always be associated with version changes to the resource. |
Short | Metadata about the resource |
Control | 0..1 |
Type | Meta |
Is Modifier | false |
Must Support | false |
Summary | true |
Invariants | ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()) ) |
6. TestCases.implicitRules | |
Definition | A reference to a set of rules that were followed when the resource was constructed, and which must be understood when processing the content. Often, this is a reference to an implementation guide that defines the special rules along with other profiles etc. |
Short | A set of rules under which this content was created |
Comments | Asserting this rule set restricts the content to be only understood by a limited set of trading partners. This inherently limits the usefulness of the data in the long term. However, the existing health eco-system is highly fractured, and not yet ready to define, collect, and exchange data in a generally computable sense. Wherever possible, implementers and/or specification writers should avoid using this element. Often, when used, the URL is a reference to an implementation guide that defines these special rules as part of its narrative along with other profiles, value sets, etc. |
Control | 0..1 |
Type | uri |
Is Modifier | true because This element is labeled as a modifier because the implicit rules may provide additional knowledge about the resource that modifies its meaning or interpretation |
Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
Must Support | false |
Summary | true |
Invariants | ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()) ) |
8. TestCases.language | |
Definition | The base language in which the resource is written. |
Short | Language of the resource content |
Comments | Language is provided to support indexing and accessibility (typically, services such as text to speech use the language tag). The html language tag in the narrative applies to the narrative. The language tag on the resource may be used to specify the language of other presentations generated from the data in the resource. Not all the content has to be in the base language. The Resource.language should not be assumed to apply to the narrative automatically. If a language is specified, it should it also be specified on the div element in the html (see rules in HTML5 for information about the relationship between xml:lang and the html lang attribute). |
Control | 0..1 |
Binding | The codes SHALL be taken from AllLanguages (required to http://hl7.org/fhir/ValueSet/all-languages|5.0.0 )IETF language tag for a human language |
Type | code |
Is Modifier | false |
Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
Must Support | false |
Summary | false |
Invariants | ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()) ) |
10. TestCases.url | |
Definition | An absolute URI that is used to identify test tests. |
Short | Canonical identifier for these tests, represented as a URI (globally unique) |
Control | 0..1 |
Type | uri |
Is Modifier | false |
Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
Summary | true |
Invariants | cnl-1: URL should not contain | or # - these characters make processing canonical references problematic (exists() implies matches('^[^|# ]+$') ) |
12. TestCases.version | |
Definition | The identifier that is used to identify this version of these tests. Version must use SemVer |
Short | Business version of the test set (semver) |
Note | This is a business version Id, not a resource version Id (see discussion) |
Control | 0..1 |
Type | string |
Is Modifier | false |
Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
Summary | true |
14. TestCases.name | |
Definition | A natural language name identifying the tests. This name should be usable as an identifier for the module by machine processing applications such as code generation. |
Short | Name for these tests |
Control | 0..1 |
Type | string |
Is Modifier | false |
Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
Summary | true |
16. TestCases.description | |
Definition | General description of these teats. |
Short | General Description of these tests |
Control | 0..1 |
Type | markdown |
Is Modifier | false |
Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
Summary | true |
18. TestCases.runner | |
Definition | URL of documentation that explains how a runner would read these tests, and use them to actually test out a tool. |
Short | URL Documentation for a runner that executes these tests |
Control | 1..1 |
Type | url |
Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
20. TestCases.mode | |
Definition | A mode that can be passed to a runner running these these tests, that affects test content and influences how the tests are executed or evaulated (or even if they run) |
Short | A mode that can be passed to runner - affects test content |
Control | 0..* |
Type | Base |
22. TestCases.mode.code | |
Definition | The code by which the mode is identified when passed to runner |
Short | The code that identifies the mode |
Control | 1..1 |
Type | string |
Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
24. TestCases.mode.description | |
Definition | Description of what this mode does / why it was defined. This should explain to a tester when they should use the mode |
Short | Description of what this mode exists / why it was defined |
Control | 0..1 |
Type | string |
Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
26. TestCases.suite | |
Definition | A suite of tests that all share a common set up, and can be executed as a group |
Short | A suite of tests that share a common set up |
Control | 0..* |
Type | Base |
28. TestCases.suite.name | |
Definition | The name by which this suite is known by in the test system. The name must be unique in the amongst the suites |
Short | The name of this suite - unique in the TestCases resource |
Control | 1..1 |
Type | string |
Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
30. TestCases.suite.description | |
Definition | Description of what this suite does / why it was defined. This should explain to a tester what they should know when deciding which tests to run |
Short | Description of what this suite does / why it was defined |
Control | 0..1 |
Type | string |
Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
32. TestCases.suite.mode | |
Definition | If this mode is not passed to the runner, then this suite will not be run |
Short | mode required to run this suite |
Control | 0..1 |
Type | code |
Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
Meaning if Missing | If no modes are listed, the suite is always executed |
34. TestCases.suite.setup | |
Definition | The resources used in the tests in this suite. How exactly they are used depends on the definition of the runner |
Short | Resources used in the tests in this suite |
Control | 0..* |
Type | Base |
Invariants | ts-2: Either a file, or a resource, but not both (file xor resource ) |
36. TestCases.suite.setup.name | |
Definition | A name that identifies this resource. The runner definition defines whether there must be a name, and what names there are |
Short | A name for this resource (per runner definition) |
Control | 0..1 |
Type | string |
Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
38. TestCases.suite.setup.file | |
Definition | A file containing a resource used in the tests |
Short | A file containing a resource used in the tests |
Comments | Filename is relative to the folder/directory containing this TestCases |
Control | 0..1 |
Type | string |
Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
40. TestCases.suite.setup.resource | |
Definition | An inline resource used in the tests. How exactly it is used depends on the definition of the runner. |
Short | An inline resource used in the tests |
Control | 0..1 |
Type | Resource |
42. TestCases.suite.setup.mode | |
Definition | If this mode is not passed to the runner, then this resource will not be used |
Short | A mode that must be true for this resource to be used |
Control | 0..1 |
Type | code |
Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
Meaning if Missing | If no modes are listed, the resource is always used |
44. TestCases.suite.test | |
Definition | An actual test in the test suite |
Short | A test in the test suite |
Control | 0..* |
Type | Base |
46. TestCases.suite.test.name | |
Definition | The name by which this test is known by in the test system. The name must be unique in the suite |
Short | The name of this test - unique in the suite |
Control | 1..1 |
Type | string |
Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
48. TestCases.suite.test.description | |
Definition | Description of what this test does / why it was defined. This should explain to a tester what they should know when looking at failing test results |
Short | Description of what this test does / why it was defined |
Control | 0..1 |
Type | string |
Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
50. TestCases.suite.test.operation | |
Definition | A code that identifies the operation executed for this test. One of the codes defined in the definition of the runner |
Short | Operation that is executed during this test (per definition of runner) |
Control | 0..1 |
Type | code |
Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
52. TestCases.suite.test.mode | |
Definition | If this mode is not passed to the runner, then this test will not be run |
Short | mode required to run this test |
Control | 0..1 |
Type | string |
Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
Meaning if Missing | If no modes are listed, the test is always executed |
54. TestCases.suite.test.parameter | |
Definition | A parameter passed to the runner when executing this test. Which parameters are valid, and how exactly the parameter is used are used depends on the definition of the runner |
Short | Parameter passed to the runner |
Control | 0..* |
Type | Base |
56. TestCases.suite.test.parameter.name | |
Definition | Name of parameter |
Short | Name of parameter |
Control | 1..1 |
Type | string |
Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
58. TestCases.suite.test.parameter.value[x] | |
Definition | The value of the parameter |
Short | Value of this parameter |
Control | 1..1 |
Type | Choice of: string, boolean, integer, decimal, dateTime, uri, Coding, Quantity |
[x] Note | SeeChoice of Data Typesfor further information about how to use [x] |
Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
60. TestCases.suite.test.parameter.mode | |
Definition | If this mode is not passed to the runner, then this parameter will not be used |
Short | A mode that must be true for this parameter to be used |
Control | 0..1 |
Type | code |
Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
Meaning if Missing | If no modes are listed, the parameter is always used |
62. TestCases.suite.test.input | |
Definition | The resources used when executing this test. How exactly they are used depends on the definition of the runner. |
Short | Resources used when executing this test (per runner definition) |
Control | 0..* |
Type | Seettp://hl7.org/fhir/tools/StructureDefinition/TestCases#TestCases.suite.setup |
64. TestCases.suite.test.output | |
Definition | Resources expected as output from this test. Often, but not always, these resources are Matchetype resources. How exactly it is used depends on the definition of the runner |
Short | Resources expected as output from this test (per runner definition, often Matchetypes) |
Control | 0..* |
Type | Seettp://hl7.org/fhir/tools/StructureDefinition/TestCases#TestCases.suite.setup |