TestScript
SpecializedA structured set of tests against a FHIR server or client implementation to determine compliance against the FHIR specification.
| Path | Card. | Type | Description & Constraints |
|---|---|---|---|
| TestScript | 0..* | — | Describes a set of tests |
| .idΣ | 0..1 | String | Logical id of this artifact |
| .metaΣ | 0..1 | Meta | Metadata about the resource |
| .implicitRules?!Σ | 0..1 | uri | A set of rules under which this content was created |
| .language | 0..1 | code | Language of the resource content Bindinglanguages(preferred) |
| .text | 0..1 | Narrative | Text summary of the resource, for human interpretation |
| .contained | 0..* | Resource | Contained, inline Resources |
| .extension | 0..* | Extension | Additional content defined by implementations |
| .modifierExtension?! | 0..* | Extension | Extensions that cannot be ignored |
| .urlΣ | 1..1 | uri | Canonical identifier for this test script, represented as a URI (globally unique) |
| .identifierΣ | 0..1 | Identifier | Additional identifier for the test script |
| .versionΣ | 0..1 | string | Business version of the test script |
| .nameΣ | 1..1 | string | Name for this test script (computer friendly) |
| .titleΣ | 0..1 | string | Name for this test script (human friendly) |
| .status?!Σ | 1..1 | code | draft | active | retired | unknown Bindingpublication-status(required) |
| .experimentalΣ | 0..1 | boolean | For testing purposes, not real usage |
| .dateΣ | 0..1 | dateTime | Date last changed |
| .publisherΣ | 0..1 | string | Name of the publisher (organization or individual) |
| .contactΣ | 0..* | ContactDetail | Contact details for the publisher |
| .description | 0..1 | markdown | Natural language description of the test script |
| .useContextΣ | 0..* | UsageContext | The context that the content is intended to support |
| .jurisdictionΣ | 0..* | CodeableConcept | Intended jurisdiction for test script (if applicable) Bindingjurisdiction(extensible) |
| .purpose | 0..1 | markdown | Why this test script is defined |
| .copyright | 0..1 | markdown | Use and/or publishing restrictions |
| .origin | 0..* | BackboneElement | An abstract server representing a client or sender in a message exchange |
| .id | 0..1 | String | Unique id for inter-element referencing |
| .extension | 0..* | Extension | Additional content defined by implementations |
| .modifierExtension?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
| .index | 1..1 | integer | The index of the abstract origin server starting at 1 |
| .profile | 1..1 | Coding | FHIR-Client | FHIR-SDC-FormFiller Bindingtestscript-profile-origin-types(extensible) |
| .destination | 0..* | BackboneElement | An abstract server representing a destination or receiver in a message exchange |
| .id | 0..1 | String | Unique id for inter-element referencing |
| .extension | 0..* | Extension | Additional content defined by implementations |
| .modifierExtension?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
| .index | 1..1 | integer | The index of the abstract destination server starting at 1 |
| .profile | 1..1 | Coding | FHIR-Server | FHIR-SDC-FormManager | FHIR-SDC-FormReceiver | FHIR-SDC-FormProcessor Bindingtestscript-profile-destination-types(extensible) |
| .metadata | 0..1 | BackboneElement | Required capability that is assumed to function correctly on the FHIR server being tested |
| .id | 0..1 | String | Unique id for inter-element referencing |
| .extension | 0..* | Extension | Additional content defined by implementations |
| .modifierExtension?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
| .link | 0..* | BackboneElement | Links to the FHIR specification |
| .id | 0..1 | String | Unique id for inter-element referencing |
| .extension | 0..* | Extension | Additional content defined by implementations |
| .modifierExtension?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
| .url | 1..1 | uri | URL to the specification |
| .description | 0..1 | string | Short description |
| .capability | 1..* | BackboneElement | Capabilities that are assumed to function correctly on the FHIR server being tested |
| .id | 0..1 | String | Unique id for inter-element referencing |
| .extension | 0..* | Extension | Additional content defined by implementations |
| .modifierExtension?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
| .required | 1..1 | boolean | Are the capabilities required? |
| .validated | 1..1 | boolean | Are the capabilities validated? |
| .description | 0..1 | string | The expected capabilities of the server |
| .origin | 0..* | integer | Which origin server these requirements apply to |
| .destination | 0..1 | integer | Which server these requirements apply to |
| .link | 0..* | uri | Links to the FHIR specification |
| .capabilities | 1..1 | canonical | Required Capability Statement |
| .fixture | 0..* | BackboneElement | Fixture in the test script - by reference (uri) |
| .id | 0..1 | String | Unique id for inter-element referencing |
| .extension | 0..* | Extension | Additional content defined by implementations |
| .modifierExtension?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
| .autocreate | 1..1 | boolean | Whether or not to implicitly create the fixture during setup |
| .autodelete | 1..1 | boolean | Whether or not to implicitly delete the fixture during teardown |
| .resource | 0..1 | Reference(Resource) | Reference of the resource |
| .profile | 0..* | Reference(Resource) | Reference of the validation profile |
| .variable | 0..* | BackboneElement | Placeholder for evaluated elements |
| .id | 0..1 | String | Unique id for inter-element referencing |
| .extension | 0..* | Extension | Additional content defined by implementations |
| .modifierExtension?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
| .name | 1..1 | string | Descriptive name for this variable |
| .defaultValue | 0..1 | string | Default, hard-coded, or user-defined value for this variable |
| .description | 0..1 | string | Natural language description of the variable |
| .expression | 0..1 | string | The FHIRPath expression against the fixture body |
| .headerField | 0..1 | string | HTTP header field name for source |
| .hint | 0..1 | string | Hint help text for default value to enter |
| .path | 0..1 | string | XPath or JSONPath against the fixture body |
| .sourceId | 0..1 | id | Fixture Id of source expression or headerField within this variable |
| .setup | 0..1 | BackboneElement | A series of required setup operations before tests are executed |
| .id | 0..1 | String | Unique id for inter-element referencing |
| .extension | 0..* | Extension | Additional content defined by implementations |
| .modifierExtension?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
| .action | 1..* | BackboneElement | A setup operation or assert to perform |
| .id | 0..1 | String | Unique id for inter-element referencing |
| .extension | 0..* | Extension | Additional content defined by implementations |
| .modifierExtension?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
| .operation | 0..1 | BackboneElement | The setup operation to perform |
| .id | 0..1 | String | Unique id for inter-element referencing |
| .extension | 0..* | Extension | Additional content defined by implementations |
| .modifierExtension?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
| .type | 0..1 | Coding | The operation code type that will be executed Bindingtestscript-operation-codes(extensible) |
| .resource | 0..1 | code | Resource type Bindingdefined-types(required) |
| .label | 0..1 | string | Tracking/logging operation label |
| .description | 0..1 | string | Tracking/reporting operation description |
| .accept | 0..1 | code | Mime type to accept in the payload of the response, with charset etc. Bindingmimetypes(required) |
| .contentType | 0..1 | code | Mime type of the request payload contents, with charset etc. Bindingmimetypes(required) |
| .destination | 0..1 | integer | Server responding to the request |
| .encodeRequestUrl | 1..1 | boolean | Whether or not to send the request url in encoded format |
| .method | 0..1 | code | delete | get | options | patch | post | put | head Bindinghttp-operations(required) |
| .origin | 0..1 | integer | Server initiating the request |
| .params | 0..1 | string | Explicitly defined path parameters |
| .requestHeader | 0..* | BackboneElement | Each operation can have one or more header elements |
| .id | 0..1 | String | Unique id for inter-element referencing |
| .extension | 0..* | Extension | Additional content defined by implementations |
| .modifierExtension?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
| .field | 1..1 | string | HTTP header field name |
| .value | 1..1 | string | HTTP headerfield value |
| .requestId | 0..1 | id | Fixture Id of mapped request |
| .responseId | 0..1 | id | Fixture Id of mapped response |
| .sourceId | 0..1 | id | Fixture Id of body for PUT and POST requests |
| .targetId | 0..1 | id | Id of fixture used for extracting the [id], [type], and [vid] for GET requests |
| .url | 0..1 | string | Request URL |
| .assert | 0..1 | BackboneElement | The assertion to perform |
| .id | 0..1 | String | Unique id for inter-element referencing |
| .extension | 0..* | Extension | Additional content defined by implementations |
| .modifierExtension?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
| .label | 0..1 | string | Tracking/logging assertion label |
| .description | 0..1 | string | Tracking/reporting assertion description |
| .direction | 0..1 | code | response | request Bindingassert-direction-codes(required) |
| .compareToSourceId | 0..1 | string | Id of the source fixture to be evaluated |
| .compareToSourceExpression | 0..1 | string | The FHIRPath expression to evaluate against the source fixture |
| .compareToSourcePath | 0..1 | string | XPath or JSONPath expression to evaluate against the source fixture |
| .contentType | 0..1 | code | Mime type to compare against the 'Content-Type' header Bindingmimetypes(required) |
| .expression | 0..1 | string | The FHIRPath expression to be evaluated |
| .headerField | 0..1 | string | HTTP header field name |
| .minimumId | 0..1 | string | Fixture Id of minimum content resource |
| .navigationLinks | 0..1 | boolean | Perform validation on navigation links? |
| .operator | 0..1 | code | equals | notEquals | in | notIn | greaterThan | lessThan | empty | notEmpty | contains | notContains | eval Bindingassert-operator-codes(required) |
| .path | 0..1 | string | XPath or JSONPath expression |
| .requestMethod | 0..1 | code | delete | get | options | patch | post | put | head Bindinghttp-operations(required) |
| .requestURL | 0..1 | string | Request URL comparison value |
| .resource | 0..1 | code | Resource type Bindingdefined-types(required) |
| .response | 0..1 | code | okay | created | noContent | notModified | bad | forbidden | notFound | methodNotAllowed | conflict | gone | preconditionFailed | unprocessable Bindingassert-response-code-types(required) |
| .responseCode | 0..1 | string | HTTP response code to test |
| .sourceId | 0..1 | id | Fixture Id of source expression or headerField |
| .validateProfileId | 0..1 | id | Profile Id of validation profile reference |
| .value | 0..1 | string | The value to compare to |
| .warningOnly | 1..1 | boolean | Will this assert produce a warning only on error? |
| .test | 0..* | BackboneElement | A test in this script |
| .id | 0..1 | String | Unique id for inter-element referencing |
| .extension | 0..* | Extension | Additional content defined by implementations |
| .modifierExtension?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
| .name | 0..1 | string | Tracking/logging name of this test |
| .description | 0..1 | string | Tracking/reporting short description of the test |
| .action | 1..* | BackboneElement | A test operation or assert to perform |
| .id | 0..1 | String | Unique id for inter-element referencing |
| .extension | 0..* | Extension | Additional content defined by implementations |
| .modifierExtension?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
| .operation | 0..1 | — | The setup operation to perform |
| .assert | 0..1 | — | The setup assertion to perform |
| .teardown | 0..1 | BackboneElement | A series of required clean up steps |
| .id | 0..1 | String | Unique id for inter-element referencing |
| .extension | 0..* | Extension | Additional content defined by implementations |
| .modifierExtension?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
| .action | 1..* | BackboneElement | One or more teardown operations to perform |
| .id | 0..1 | String | Unique id for inter-element referencing |
| .extension | 0..* | Extension | Additional content defined by implementations |
| .modifierExtension?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
| .operation | 1..1 | — | The teardown operation to perform |