-
Notifications
You must be signed in to change notification settings - Fork 3
Server Details
Note: most of this page describes the v2.2.0 DTR payer server tests. For information on the v2.0.1 tests, see the DTR v2.0.1 Server Tests section below.
Inferno will simulate a DTR client that makes requests for questionnaires and
submits QuestionnaireResponses to the system under test. The server will be
expected to respond to these requests made by Inferno. Over the course of these
interactions, Inferno will seek to observe conformant handling of DTR
requirements
around standard questionnaires, adaptive questionnaires, or both. Inferno will
then perform the ValueSet/$expand operation on ValueSets included in the
returned Questionnaires and perform $log-questionnaire-errors operations to
verify that the server supports these operations.
The tests verify that the Questionnaires support pre-population from the EHR, using logic to only display relevant questions, and can use all Must Support fields.
Because the business logic that determines which questionnaires are returned
is outside of the DTR specification and will vary between implementers, testers
are required to provide the requests that Inferno will make to the server,
either via user input or a tester-controlled DTR client. See
the Controlling Simulated DTR Client Requests page
for details on how to specify requests for the $questionnaire-package and
$next-question operations.
All responses returned by the server, as well as tester-provided requests, will
be checked for conformance to the DTR IG requirements individually and used in
aggregate to determine whether required features and functionality are present.
HL7® FHIR® resources are validated with the Java validator using tx.fhir.org
as the terminology server.
Some of the server requirements in the IG are not currently tested by the payer suite. Below is a list of untested requirements along with reasons they are not tested.
These are requirements on the payer organization itself rather than on the interactions between the payer server and a DTR client.
Automated conformance testing using Inferno for the following requirements is not practical for a variety of reasons, such as depending on interpreting the semantics of an interaction, or on content that is not machine-readable.
- conf-9
- conf-12
- conf-13
- oper-7
- oper-8
- sec-3
- sec-4
- spec-6
- spec-21
- spec-22
- spec-38
- spec-41
- spec-42
- spec-43
- spec-45
- spec-120
- spec-128
- spec-159
- spec-165
These requirements are identified as requirements for payer servers, but are actually requirements for other actors.
These requirements are not currently tested, but may be tested in future versions of the payer server suite. Some of these requirements would significantly expand the scope of of test suite, such as validating CQL content, or verifying that all security and privacy rules from FHIR Core, HREX, and SMART App Launch are followed.
The DTR Test Kit includes a suite, Da Vinci DTR Payer Server Test Suite v2.0.1, that test payer server actors against requirements from the v2.0.1 version of the DTR IG.
Due to the complexity of the DTR spec and the lack of robust implementations to test against during development, these tests remain immature compared to the v2.2.0 versions and are not currently being actively enhanced.