R4 Draft for Comment

This page is part of the FHIR Specification (v3.2.0: R4 Ballot 1). The current version which supercedes this version is 5.0.0. For a full list of available versions, see the Directory of published versions . Page versions: R5 R4B R4 R3

FHIR Infrastructure Work GroupMaturity Level: 0 Draft Compartments: Not linked to any defined compartments

Detailed Descriptions for the elements in the TestReport resource.

TestReport
Definition

A summary of information based on the results of executing a TestScript.

Control1..1
TestReport.identifier
Definition

Identifier for the TestScript assigned for external purposes outside the context of FHIR.

NoteThis is a business identifer, not a resource identifier (see discussion)
Control0..1
TypeIdentifier
Summarytrue
TestReport.name
Definition

A free text natural language name identifying the executed TestScript.

Control0..1
Typestring
Summarytrue
Comments

Not expected to be globally unique.

TestReport.status
Definition

The current state of this test report.

Control1..1
Terminology BindingTestReportStatus (Required)
Typecode
Is Modifiertrue
Summarytrue
Comments

The status represents where the execution is currently within the test script execution life cycle.

This element is labeled as a modifier because the status contains codes that mark the resource as not currently valid.

TestReport.testScript
Definition

Ideally this is an absolute URL that is used to identify the version-specific TestScript that was executed, matching the TestScript.url.

Control1..1
TypeReference(TestScript)
Summarytrue
TestReport.result
Definition

The overall result from the execution of the TestScript.

Control1..1
Terminology BindingTestReportResult (Required)
Typecode
Summarytrue
Comments

The pass and fail result represents a completed test script execution. The pending result represents a test script execution that has not yet started or is currently in progress.

TestReport.score
Definition

The final score (percentage of tests passed) resulting from the execution of the TestScript.

Control0..1
Typedecimal
Summarytrue
TestReport.tester
Definition

Name of the tester producing this report (Organization or individual).

Control0..1
Typestring
Requirements

Helps establish the "authority/credibility" of the TestReport. May also allow for contact.

Summarytrue
Comments

Usually an organization, but may be an individual. This item SHOULD be populated unless the information is available from context.

TestReport.issued
Definition

When the TestScript was executed and this TestReport was generated.

Control0..1
TypedateTime
Summarytrue
Comments

Additional specific dates may be added as extensions.

TestReport.participant
Definition

A participant in the test execution, either the execution engine, a client, or a server.

Control0..*
TestReport.participant.type
Definition

The type of participant.

Control1..1
Terminology BindingTestReportParticipantType (Required)
Typecode
TestReport.participant.uri
Definition

The uri of the participant. An absolute URL is preferred.

Control1..1
Typeuri
TestReport.participant.display
Definition

The display name of the participant.

Control0..1
Typestring
TestReport.setup
Definition

The results of the series of required setup operations before the tests were executed.

Control0..1
TestReport.setup.action
Definition

Action would contain either an operation or an assertion.

Control1..*
Comments

An action should contain either an operation or an assertion but not both. It can contain any number of variables.

InvariantsDefined on this element
inv-1: Setup action SHALL contain either an operation or assert but not both. (expression : operation.exists() xor assert.exists(), xpath: (f:operation or f:assert) and not(f:operation and f:assert))
TestReport.setup.action.operation
Definition

The operation performed.

Control0..1
TestReport.setup.action.operation.result
Definition

The result of this operation.

Control1..1
Terminology BindingTestReportActionResult (Required)
Typecode
TestReport.setup.action.operation.message
Definition

An explanatory message associated with the result.

Control0..1
Typemarkdown
TestReport.setup.action.operation.detail
Definition

A link to further details on the result.

Control0..1
Typeuri
TestReport.setup.action.assert
Definition

The results of the assertion performed on the previous operations.

Control0..1
TestReport.setup.action.assert.result
Definition

The result of this assertion.

Control1..1
Terminology BindingTestReportActionResult (Required)
Typecode
TestReport.setup.action.assert.message
Definition

An explanatory message associated with the result.

Control0..1
Typemarkdown
TestReport.setup.action.assert.detail
Definition

A link to further details on the result.

Control0..1
Typestring
TestReport.test
Definition

A test executed from the test script.

Control0..*
TestReport.test.name
Definition

The name of this test used for tracking/logging purposes by test engines.

Control0..1
Typestring
TestReport.test.description
Definition

A short description of the test used by test engines for tracking and reporting purposes.

Control0..1
Typestring
TestReport.test.action
Definition

Action would contain either an operation or an assertion.

Control1..*
Comments

An action should contain either an operation or an assertion but not both. It can contain any number of variables.

InvariantsDefined on this element
inv-2: Test action SHALL contain either an operation or assert but not both. (expression : operation.exists() xor assert.exists(), xpath: (f:operation or f:assert) and not(f:operation and f:assert))
TestReport.test.action.operation
Definition

An operation would involve a REST request to a server.

Control0..1
TypeSee TestReport.setup.action.operation
TestReport.test.action.assert
Definition

The results of the assertion performed on the previous operations.

Control0..1
TypeSee TestReport.setup.action.assert
TestReport.teardown
Definition

The results of the series of operations required to clean up after the all the tests were executed (successfully or otherwise).

Control0..1
TestReport.teardown.action
Definition

The teardown action will only contain an operation.

Control1..*
Comments

An action should contain either an operation or an assertion but not both. It can contain any number of variables.

TestReport.teardown.action.operation
Definition

An operation would involve a REST request to a server.

Control1..1
TypeSee TestReport.setup.action.operation