FHIR Testing IG, published by HL7 International / FHIR Infrastructure. This guide is not an authorized publication; it is the continuous build for version 0.1.0-SNAPSHOT built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/HL7/fhir-testing-ig/ and changes regularly. See the Directory of published versions
| Page standards status: Informative |
{
"resourceType" : "TestScript",
"resourceDefinition" : "http://hl7.org/fhir/StructureDefinition/TestScript|0.1.0-SNAPSHOT",
"id" : "testscript-example-readtest",
"language" : "en",
"text" : {
"status" : "generated",
"div" : "<div xmlns=\"http://www.w3.org/1999/xhtml\" xml:lang=\"en\" lang=\"en\"><p class=\"res-header-id\"><b>Generated Narrative: TestScript testscript-example-readtest</b></p><a name=\"testscript-example-readtest\"> </a><a name=\"hctestscript-example-readtest\"> </a><div style=\"display: inline-block; background-color: #d9e0e7; padding: 6px; margin: 4px; border: 1px solid #8da1b4; border-radius: 5px; line-height: 60%\"><p style=\"margin-bottom: 0px\">Language: en</p></div><p><b>url</b>: <a href=\"http://hl7.org/fhir/TestScript/testscript-example-readtest\">http://hl7.org/fhir/TestScript/testscript-example-readtest</a></p><p><b>identifier</b>: <a href=\"http://terminology.hl7.org/6.5.0/NamingSystem-uri.html\" title=\"As defined by RFC 3986 (http://www.ietf.org/rfc/rfc3986.txt)(with many schemes defined in many RFCs). For OIDs and UUIDs, use the URN form (urn:oid:(note: lowercase) and urn:uuid:). See http://www.ietf.org/rfc/rfc3001.txt and http://www.ietf.org/rfc/rfc4122.txt \r\n\r\nThis oid is used as an identifier II.root to indicate the the extension is an absolute URI (technically, an IRI). Typically, this is used for OIDs and GUIDs. Note that when this OID is used with OIDs and GUIDs, the II.extension should start with urn:oid or urn:uuid: \r\n\r\nNote that this OID is created to aid with interconversion between CDA and FHIR - FHIR uses urn:ietf:rfc:3986 as equivalent to this OID. URIs as identifiers appear more commonly in FHIR.\r\n\r\nThis OID may also be used in CD.codeSystem.\">Uniform Resource Identifier (URI)</a>/urn:oid:2.16.840.1.113883.4.642.12.2</p><p><b>version</b>: 1.0</p><p><b>title</b>: TestScript Example Read Test</p><p><b>status</b>: Draft</p><p><b>experimental</b>: true</p><p><b>date</b>: 2017-01-18</p><p><b>publisher</b>: HL7</p><p><b>contact</b>: Support: <a href=\"mailto:support@HL7.org\">support@HL7.org</a></p><p><b>description</b>: </p><div><p>TestScript example resource with ported Sprinkler basic read tests R001, R002, R003, R004. The read tests will utilize user defined dynamic variables that will hold the Patient resource id values.</p>\n</div><p><b>jurisdiction</b>: <span title=\"Codes:{urn:iso:std:iso:3166 US}\">United States of America</span></p><p><b>purpose</b>: </p><div><p>Patient Read Operation</p>\n</div><p><b>copyright</b>: </p><div><p>© HL7.org 2011+</p>\n</div><blockquote><p><b>metadata</b></p><h3>Links</h3><table class=\"grid\"><tr><td style=\"display: none\">-</td><td><b>Url</b></td><td><b>Description</b></td></tr><tr><td style=\"display: none\">*</td><td><a href=\"http://hl7.org/fhir/patient.html\">http://hl7.org/fhir/patient.html</a></td><td>Demographics and other administrative information about an individual or animal receiving care or other health-related services.</td></tr></table><h3>Capabilities</h3><table class=\"grid\"><tr><td style=\"display: none\">-</td><td><b>Required</b></td><td><b>Validated</b></td><td><b>Description</b></td><td><b>Link</b></td><td><b>Capabilities</b></td></tr><tr><td style=\"display: none\">*</td><td>true</td><td>false</td><td>Patient Read Operation</td><td><a href=\"http://hl7.org/fhir/http.html#read\">http://hl7.org/fhir/http.html#read</a></td><td><code>http://hl7.org/fhir/CapabilityStatement/example</code></td></tr></table></blockquote><h3>Scopes</h3><table class=\"grid\"><tr><td style=\"display: none\">-</td><td><b>Artifact</b></td><td><b>Conformance</b></td><td><b>Phase</b></td></tr><tr><td style=\"display: none\">*</td><td><a href=\"http://hl7.org/fhir/R5/patient.html\">Patient</a></td><td><span title=\"Codes:{http://hl7.org/fhir/testscript-scope-conformance-codes optional}\">Optional</span></td><td><span title=\"Codes:{http://hl7.org/fhir/testscript-scope-phase-codes unit}\">Unit</span></td></tr></table><p><b>profile</b>: <a href=\"http://hl7.org/fhir/R5/patient.html\">Patient</a></p><blockquote><p><b>variable</b></p><p><b>name</b>: KnownPatientResourceId</p><p><b>defaultValue</b>: example</p></blockquote><blockquote><p><b>variable</b></p><p><b>name</b>: NonExistsPatientResourceId</p><p><b>defaultValue</b>: does-not-exist</p></blockquote><blockquote><p><b>test</b></p><blockquote><p><b>id</b></p>R001</blockquote><p><b>name</b>: Sprinkler Read Test R001</p><p><b>description</b>: Read a known Patient and validate response.</p><blockquote><p><b>action</b></p></blockquote></blockquote><p><b style=\"color: maroon\">Exception Generating Narrative: Unable to resolve content reference http://hl7.org/fhir/StructureDefinition/TestScript#TestScript.setup.action.operation trying to resolve TestScript.test.action.operation </b></p></div>"
},
"url" : "http://hl7.org/fhir/TestScript/testscript-example-readtest",
"identifier" : [
{
"system" : "urn:ietf:rfc:3986",
"value" : "urn:oid:2.16.840.1.113883.4.642.12.2"
}
],
"version" : "1.0",
"title" : "TestScript Example Read Test",
"status" : "draft",
"experimental" : true,
"date" : "2017-01-18",
"publisher" : "HL7",
"contact" : [
{
"name" : "Support",
"telecom" : [
{
"system" : "email",
"value" : "support@HL7.org",
"use" : "work"
}
]
}
],
"description" : "TestScript example resource with ported Sprinkler basic read tests R001, R002, R003, R004. The read tests will utilize user defined dynamic variables that will hold the Patient resource id values.",
"jurisdiction" : [
{
"coding" : [
{
"system" : "urn:iso:std:iso:3166",
"code" : "US",
"display" : "United States of America"
}
]
}
],
"purpose" : "Patient Read Operation",
"copyright" : "© HL7.org 2011+",
"metadata" : {
"link" : [
{
"url" : "http://hl7.org/fhir/patient.html",
"description" : "Demographics and other administrative information about an individual or animal receiving care or other health-related services."
}
],
"capability" : [
{
"required" : true,
"validated" : false,
"description" : "Patient Read Operation",
"link" : [
"http://hl7.org/fhir/http.html#read"
],
"capabilities" : "http://hl7.org/fhir/CapabilityStatement/example"
}
]
},
"scope" : [
{
"artifact" : "http://hl7.org/fhir/StructureDefinition/Patient",
"conformance" : {
"coding" : [
{
"system" : "http://hl7.org/fhir/testscript-scope-conformance-codes",
"code" : "optional"
}
]
},
"phase" : {
"coding" : [
{
"system" : "http://hl7.org/fhir/testscript-scope-phase-codes",
"code" : "unit"
}
]
}
}
],
"profile" : [
🔗 "http://hl7.org/fhir/StructureDefinition/Patient"
],
"_profile" : [
{
🔗 "id" : "patient-profile"
}
],
"variable" : [
{
"name" : "KnownPatientResourceId",
"defaultValue" : "example"
},
{
"name" : "NonExistsPatientResourceId",
"defaultValue" : "does-not-exist"
}
],
"test" : [
{
"id" : "R001",
"name" : "Sprinkler Read Test R001",
"description" : "Read a known Patient and validate response.",
"action" : [
{
"operation" : {
"type" : {
"system" : "http://hl7.org/fhir/restful-interaction",
"code" : "read"
},
"resource" : "Patient",
"description" : "Read the known Patient resource on the destination test system using the user defined dynamic variable ${KnownPatientResourceId}.",
"accept" : "xml",
"encodeRequestUrl" : true,
"params" : "/${KnownPatientResourceId}"
}
},
{
"assert" : {
"description" : "Confirm that the returned HTTP status is 200(OK).",
"response" : "okay",
"stopTestOnFail" : false,
"warningOnly" : false
}
},
{
"assert" : {
"description" : "Confirm that the returned format is XML.",
"contentType" : "xml",
"stopTestOnFail" : false,
"warningOnly" : false
}
},
{
"assert" : {
"description" : "Confirm that the returned HTTP Header Last-Modified is present. Warning only as the server might not support versioning.",
"headerField" : "Last-Modified",
"operator" : "notEmpty",
"stopTestOnFail" : false,
"warningOnly" : true
}
},
{
"assert" : {
"description" : "Confirm that the returned resource type is Patient.",
"resource" : "Patient",
"stopTestOnFail" : false,
"warningOnly" : false
}
},
{
"assert" : {
"description" : "Confirm that the returned Patient conforms to the base FHIR specification.",
"stopTestOnFail" : false,
"validateProfileId" : "patient-profile",
"warningOnly" : false
}
}
]
},
{
"id" : "R002",
"name" : "Sprinkler Read Test R002",
"description" : "Read an unknown Resource Type and validate response.",
"action" : [
{
"operation" : {
"type" : {
"system" : "http://hl7.org/fhir/restful-interaction",
"code" : "read"
},
"resource" : "Patient",
"description" : "Attempt to read the Parameters resource type. What we really want here is an illegal type but the build process won't allow that. Parameters is a valid resource which doesn't have an end-point so, this should fail.",
"accept" : "xml",
"encodeRequestUrl" : true,
"params" : "/1"
}
},
{
"assert" : {
"description" : "Confirm that the returned HTTP status is 404(Not Found).",
"response" : "notFound",
"stopTestOnFail" : false,
"warningOnly" : false
}
}
]
},
{
"id" : "R003",
"name" : "Sprinkler Read Test R003",
"description" : "Read a known, non-existing Patient and validate response.",
"action" : [
{
"operation" : {
"type" : {
"system" : "http://hl7.org/fhir/restful-interaction",
"code" : "read"
},
"resource" : "Patient",
"description" : "Attempt to read the non-existing Patient resource on the destination test system using the user defined dynamic variable ${NonExistsPatientResourceId}.",
"accept" : "xml",
"encodeRequestUrl" : true,
"params" : "/${NonExistsPatientResourceId}"
}
},
{
"assert" : {
"description" : "Confirm that the returned HTTP status is 404(Not Found).",
"response" : "notFound",
"stopTestOnFail" : false,
"warningOnly" : false
}
}
]
},
{
"id" : "R004",
"name" : "Sprinkler Read Test R004",
"description" : "Read a Patient using a known bad formatted resource id and validate response.",
"action" : [
{
"operation" : {
"type" : {
"system" : "http://hl7.org/fhir/restful-interaction",
"code" : "read"
},
"resource" : "Patient",
"description" : "Attempt to read a Patient resource on the destination test system using known bad formatted resource id.",
"accept" : "xml",
"encodeRequestUrl" : true,
"params" : "/ID-may-not-contain-CAPITALS"
}
},
{
"assert" : {
"description" : "Confirm that the returned HTTP status is 400(Bad Request).",
"response" : "badRequest",
"stopTestOnFail" : false,
"warningOnly" : false
}
}
]
}
]
}