TestReport - FHIR Resource (stu3)


This TestReport Resource uses the FHIR API standard for access and structure.

Resource Attributes

AttributeField is listTypeDescription
identifierfalseIdentifier External identifier
issuedfalsedateTime When the TestScript was executed and this TestReport was generated
namefalsestring Informal name of the executed TestScript
participanttrueData Type A participant in the test execution, either the execution engine, a client, or a server
resultfalsecode pass | fail | pending
scorefalsedecimal The final score (percentage of tests passed) resulting from the execution of the TestScript
setupfalseData Type The results of the series of required setup operations before the tests were executed
statusfalsecode completed | in-progress | waiting | stopped | entered-in-error
teardownfalseData Type The results of running the series of required clean up steps
testtrueData Type A test executed from the test script
testScriptfalseReference Reference to the version-specific TestScript that was executed to produce this TestReport
testerfalsestring Name of the tester producing this report (Organization or individual)

TestReport Example

{
  "status": "completed",
  "participant": [
    {
      "type": "test-engine",
      "uri": "http://projectcrucible.org",
      "display": "Crucible"
    },
    {
      "type": "server",
      "uri": "http://fhir3.healthintersections.com.au/open",
      "display": "HealthIntersections STU3"
    }
  ],
  "name": "TestReport Example for TestScript Example",
  "tester": "HL7 Execution Engine",
  "resourceType": "TestReport",
  "text": {
    "status": "generated",
    "div": "<div xmlns=\"http://www.w3.org/1999/xhtml\"><p><b>Generated Narrative with Details</b></p><p><b>id</b>: testreport-example</p><p><b>identifier</b>: urn:oid:1.3.6.1.4.1.21367.2005.3.7.9878</p><p><b>name</b>: TestReport Example for TestScript Example</p><p><b>status</b>: completed</p><p><b>testScript</b>: <a>TestScript/testscript-example</a></p><p><b>result</b>: pass</p><p><b>score</b>: 100.0</p><p><b>tester</b>: HL7 Execution Engine</p><p><b>issued</b>: 07/10/2016 8:25:34 AM</p><blockquote><p><b>participant</b></p><p><b>type</b>: test-engine</p><p><b>uri</b>: <a>http://projectcrucible.org</a></p><p><b>display</b>: Crucible</p></blockquote><blockquote><p><b>participant</b></p><p><b>type</b>: server</p><p><b>uri</b>: <a>http://fhir3.healthintersections.com.au/open</a></p><p><b>display</b>: HealthIntersections STU3</p></blockquote><blockquote><p><b>setup</b></p><blockquote><p><b>action</b></p><h3>Operations</h3><table><tr><td>-</td><td><b>Result</b></td><td><b>Message</b></td><td><b>Detail</b></td></tr><tr><td>*</td><td>pass</td><td>DELETE Patient</td><td><a>http://projectcrucible.org/permalink/1</a></td></tr></table></blockquote><blockquote><p><b>action</b></p><h3>Asserts</h3><table><tr><td>-</td><td><b>Result</b></td><td><b>Message</b></td><td><b>Detail</b></td></tr><tr><td>*</td><td>pass</td><td>HTTP 204</td><td>http://projectcrucible.org/permalink/1</td></tr></table></blockquote><blockquote><p><b>action</b></p><h3>Operations</h3><table><tr><td>-</td><td><b>Result</b></td><td><b>Message</b></td><td><b>Detail</b></td></tr><tr><td>*</td><td>pass</td><td>POST Patient/fixture-patient-create</td><td><a>http://projectcrucible.org/permalink/1</a></td></tr></table></blockquote><blockquote><p><b>action</b></p><h3>Asserts</h3><table><tr><td>-</td><td><b>Result</b></td><td><b>Message</b></td><td><b>Detail</b></td></tr><tr><td>*</td><td>pass</td><td>HTTP 201</td><td>http://projectcrucible.org/permalink/1</td></tr></table></blockquote></blockquote><blockquote><p><b>test</b></p><p><b>name</b>: Read Patient</p><p><b>description</b>: Read a Patient and validate response.</p><blockquote><p><b>action</b></p><h3>Operations</h3><table><tr><td>-</td></tr><tr><td>*</td></tr></table></blockquote><blockquote><p><b>action</b></p><h3>Asserts</h3><table><tr><td>-</td></tr><tr><td>*</td></tr></table></blockquote><blockquote><p><b>action</b></p><h3>Asserts</h3><table><tr><td>-</td></tr><tr><td>*</td></tr></table></blockquote><blockquote><p><b>action</b></p><h3>Asserts</h3><table><tr><td>-</td></tr><tr><td>*</td></tr></table></blockquote><blockquote><p><b>action</b></p><h3>Asserts</h3><table><tr><td>-</td></tr><tr><td>*</td></tr></table></blockquote><blockquote><p><b>action</b></p><h3>Asserts</h3><table><tr><td>-</td></tr><tr><td>*</td></tr></table></blockquote><blockquote><p><b>action</b></p><h3>Asserts</h3><table><tr><td>-</td></tr><tr><td>*</td></tr></table></blockquote><blockquote><p><b>action</b></p><h3>Asserts</h3><table><tr><td>-</td></tr><tr><td>*</td></tr></table></blockquote><blockquote><p><b>action</b></p><h3>Asserts</h3><table><tr><td>-</td></tr><tr><td>*</td></tr></table></blockquote><blockquote><p><b>action</b></p><h3>Asserts</h3><table><tr><td>-</td></tr><tr><td>*</td></tr></table></blockquote></blockquote><blockquote><p><b>teardown</b></p><blockquote><p><b>action</b></p><h3>Operations</h3><table><tr><td>-</td></tr><tr><td>*</td></tr></table></blockquote></blockquote></div>"
  },
  "setup": {
    "action": [
      {
        "operation": {
          "message": "DELETE Patient",
          "result": "pass",
          "detail": "http://projectcrucible.org/permalink/1"
        }
      },
      {
        "assert": {
          "message": "HTTP 204",
          "result": "pass",
          "detail": "http://projectcrucible.org/permalink/1"
        }
      },
      {
        "operation": {
          "message": "POST Patient/fixture-patient-create",
          "result": "pass",
          "detail": "http://projectcrucible.org/permalink/1"
        }
      },
      {
        "assert": {
          "message": "HTTP 201",
          "result": "pass",
          "detail": "http://projectcrucible.org/permalink/1"
        }
      }
    ]
  },
  "testScript": {
    "reference": "TestScript/testscript-example"
  },
  "teardown": {
    "action": [
      {
        "operation": {
          "message": "DELETE Patient/fixture-patient-create.",
          "result": "pass",
          "detail": "http://projectcrucible.org/permalink/3"
        }
      }
    ]
  },
  "score": 100,
  "result": "pass",
  "issued": "2016-10-07T08:25:34-05:00",
  "test": [
    {
      "action": [
        {
          "operation": {
            "message": "GET Patient/fixture-patient-create",
            "result": "pass",
            "detail": "http://projectcrucible.org/permalink/2"
          }
        },
        {
          "assert": {
            "message": "HTTP 200",
            "result": "pass",
            "detail": "http://projectcrucible.org/permalink/2"
          }
        },
        {
          "assert": {
            "message": "Last-Modified Present",
            "result": "pass",
            "detail": "http://projectcrucible.org/permalink/2"
          }
        },
        {
          "assert": {
            "message": "Response is Patient",
            "result": "pass",
            "detail": "http://projectcrucible.org/permalink/2"
          }
        },
        {
          "assert": {
            "message": "Response validates",
            "result": "pass",
            "detail": "http://projectcrucible.org/permalink/2"
          }
        },
        {
          "assert": {
            "message": "Patient.name.family 'Chalmers'",
            "result": "pass",
            "detail": "http://projectcrucible.org/permalink/2"
          }
        },
        {
          "assert": {
            "message": "Patient.name.given 'Peter'",
            "result": "pass",
            "detail": "http://projectcrucible.org/permalink/2"
          }
        },
        {
          "assert": {
            "message": "Patient.name.family 'Chalmers'",
            "result": "pass",
            "detail": "http://projectcrucible.org/permalink/2"
          }
        },
        {
          "assert": {
            "message": "Patient.name.family 'Chalmers'",
            "result": "pass",
            "detail": "http://projectcrucible.org/permalink/2"
          }
        },
        {
          "assert": {
            "message": "Patient expected values.",
            "result": "pass",
            "detail": "http://projectcrucible.org/permalink/2"
          }
        }
      ],
      "description": "Read a Patient and validate response.",
      "id": "01-ReadPatient",
      "name": "Read Patient"
    }
  ],
  "identifier": {
    "system": "urn:ietf:rfc:3986",
    "value": "urn:oid:1.3.6.1.4.1.21367.2005.3.7.9878"
  },
  "id": "testreport-example"
}

TestReport Structure


  
{
  "resourceType" : "TestReport",
  // from Resource: id, meta, implicitRules, and language
  // from DomainResource: text, contained, extension, and modifierExtension
  "identifier" : { Identifier }, // External identifier
  "name" : "<string>", // Informal name of the executed TestScript
  "status" : "<code>", // R!  completed | in-progress | waiting | stopped | entered-in-error
  "testScript" : { Reference(TestScript) }, // R!  Reference to the  version-specific TestScript that was executed to produce this TestReport
  "result" : "<code>", // R!  pass | fail | pending
  "score" : <decimal>, // The final score (percentage of tests passed) resulting from the execution of the TestScript
  "tester" : "<string>", // Name of the tester producing this report (Organization or individual)
  "issued" : "<dateTime>", // When the TestScript was executed and this TestReport was generated
  "participant" : [{ // A participant in the test execution, either the execution engine, a client, or a server
    "type" : "<code>", // R!  test-engine | client | server
    "uri" : "<uri>", // R!  The uri of the participant. An absolute URL is preferred
    "display" : "<string>" // The display name of the participant
  }],
  "setup" : { // The results of the series of required setup operations before the tests were executed
    "action" : [{ // R!  A setup operation or assert that was executed
      "operation" : { // The operation to perform
        "result" : "<code>", // R!  pass | skip | fail | warning | error
        "message" : "<markdown>", // A message associated with the result
        "detail" : "<uri>" // A link to further details on the result
      },
      "assert" : { // The assertion to perform
        "result" : "<code>", // R!  pass | skip | fail | warning | error
        "message" : "<markdown>", // A message associated with the result
        "detail" : "<string>" // A link to further details on the result
      }
    }]
  },
  "test" : [{ // A test executed from the test script
    "name" : "<string>", // Tracking/logging name of this test
    "description" : "<string>", // Tracking/reporting short description of the test
    "action" : [{ // R!  A test operation or assert that was performed
      "operation" : { Content as for TestReport.setup.action.operation }, // The operation performed
      "assert" : { Content as for TestReport.setup.action.assert } // The assertion performed
    }]
  }],
  "teardown" : { // The results of running the series of required clean up steps
    "action" : [{ // R!  One or more teardown operations performed
      "operation" : { Content as for TestReport.setup.action.operation } // R!  The teardown operation performed
    }]
  }
}


 

TestReport Search Parameters

The following search parameters can be used to query TestReport resources. Just submit the like so:

https://api.1up.health/fhir/stu3/TestReport?query-param=queryvalue
Search ParameterField TypeResource Fields Searched
identifiertextidentifier
issueddateissued
participanturiparticipant.uri
resulttextresult
testertexttester
testscriptreferencetestScript