Skip to content

FHIR Base Test Scenarios

MikeHowley edited this page Dec 20, 2016 · 5 revisions

Implemented

Positive FHIR Endpoint Tests

Test ID Scenario Name Description Validation
FHIRBASETEST1 Fhir Get MetaData Makes a GET request to the "metadata" endpoint of the server setup in the configuration file. This checks the response is successful, the body is in a JSON format and that the "resourceType" element is "Conformance".
FHIRBASETEST2 Fhir Retrieve the care record for a patient Makes a call to the "gpc.getcarerecord" operation on the server which is pointed to in the configuration file. This checks the response is successful, the body is in a JSON format and that the "resourceType" element is "Bundle".

XML & JSON Content Type Test Scenarios

Test ID Scenario Name Description Validation
FHIRBASETEST3 Fhir Response ContentType JSON with Accept Header same as request type Send a successful request to getCareRecord request in JSON format with an Accept header for a response in JSON format. Response should be JSON
FHIRBASETEST4 Fhir Response ContentType XML with Accept Header same as request type Send a successful request to getCareRecord request in XML format with an Accept header for a response in XML format. Response should be XML

Conformance Profile Test Scenarios

Test ID Scenario Name Description
FHIRBASETEST5 Conformance profile indicates acceptance of xml and json format This test sends a request to get the conformance profile from the metadata endpoint and checks that the format element contains both "application/json+fhir" and "applicaiton/xml+fhir", the FHIR specification requires that "json" and "xml" are also valid options so the test allows these instead of the full meme-types as they represent the same value.
FHIRBASETEST6 Conformance profile suppliers software versions present In this test we are checking that the conformance profile contains information about the version and release details for the suppliers endpoint.
FHIRBASETEST7 Conformance profile supported fhir version DSTU2 This test checks that the correct "fhirVersion" element is present indicating that the endpoint supports the DSTU2 standard.

To Be Implemented

XML & JSON Content Type Test Scenarios

Test ID Scenario Name Description Validation
FHIRBASETEST8 Response Accept Header JSON, Accept Header different to request type Response should be JSON
FHIRBASETEST9 Response Accept Header XML, Accept Header different to request type Response should be XML
FHIRBASETEST10 _format JSON, _format Parameter same as request type Response should be JSON
FHIRBASETEST11 _format XML, _format Paramater same as request type Response should be XML
FHIRBASETEST12 _format JSON, _format Parameter different to request type Response should be JSON
FHIRBASETEST13 _format XML, _format Paramater different to request type Response should be XML
FHIRBASETEST14 Accept Header and _format Paramater different, _format being JSON Response should be JSON
FHIRBASETEST15 Accept Header and _format Paramater different, _format being XML Response should be XML
FHIRBASETEST16 Invalid content type application/xml 415 Unsupported Media Type Response
FHIRBASETEST17 Invalid content type application/json 415 Unsupported Media Type Response
FHIRBASETEST18 Invalid content type text/html 415 Unsupported Media Type Response
FHIRBASETEST19 Case sensitivity in payload field names
FHIRBASETEST20 Case sensitivity in fhir request parameters

GP Connect FHIR Conformance Profile

Test ID Scenario Name Description
FHIRBASETEST21 FHIR Conformance Profile Checking - 1 Given I am using the default server And I am performing the "urn:nhs:names:services:gpconnect:fhir:rest:read:metadata" interaction And I author the request for retrieving the conformance statement for the FHIR server Then the response contains the version of the conformance statement as "1.0.0-rc.1" in the version element And contains the name of the conformance statement as "GP Connect" in the element And contains the status of the conformance statement as "draft" in the element And contains the value of "true" in the element And contains the name of the publisher as "NHS Digital" in the element And contains the name of the software vendor in the element And contains the publication date in the element as "2016-08-08" And contains the human description of the conformance statement as "This server is a reference implementation of the GP Connect FHIR APIs" in the element And contains the publishing restrictions as "Copyright NHS Digital 2016" in the element And contains the conformance statement kind as "capability" in the element
FHIRBASETEST22 FHIR Conformance Profile Checking - 4 Given I am using the default server And I am performing the "urn:nhs:names:services:gpconnect:fhir:rest:read:metadata" interaction And I author the request for retrieving the conformance statement for the FHIR server Then the response contains the information about security of vendor implementation within the element And contains the value of "true" in the element And contains the actual vendor certificate in the element
FHIRBASETEST23 FHIR Conformance Profile Checking - PatientResourceType Given I am using the default server And I am performing the "urn:nhs:names:services:gpconnect:fhir:rest:read:metadata" interaction And I author the request for retrieving the conformance statement for the FHIR server Then the response contains the resource type supported as "Patient" in the element And contains the operation supported for this Patient resource type as "read" in the element And contains the value as "versioned" in the element And contains the value as "false" in the element And contains the value as "false" in the element And contains the search parmeter name as "identifier" in the element And contains the search parmeter type as "token" in the element And contains some documentation about how this idenfier search parameter is used in the element such as "NHS Number (i.e. http://fhir.nhs.net/Id/nhs-number
FHIRBASETEST24 FHIR Conformance Profile Checking - OrganisationResourceType Given I am using the default server And I am performing the "urn:nhs:names:services:gpconnect:fhir:rest:read:metadata" interaction And I author the request for retrieving the conformance statement for the FHIR server Then the response contains the resource type supported as "Organisation" in the element And contains the operation supported for this Organisation resource type as "read" in the element And contains the value as "versioned" in the element And contains the value as "false" in the element And contains the value as "false" in the element And contains the search parmeter name as "identifier" in the element And contains the search parmeter type as "token" in the element And contains some documentation about how this idenfier search parameter is used in the element such as "ODS Code (i.e. http://fhir.nhs.net/Id/ods-organization-code
FHIRBASETEST25 FHIR Conformance Profile Checking - PractitionerResourceType Given I am using the default server And I am performing the "urn:nhs:names:services:gpconnect:fhir:rest:read:metadata" interaction And I author the request for retrieving the conformance statement for the FHIR server Then the response contains the resource type supported as "Practitioner" in the element And contains the operation supported for this Practitioner resource type as "read" in the element And contains the value as "versioned" in the element And contains the value as "false" in the element And contains the value as "false" in the element And contains the search parmeter name as "identifier" in the element And contains the search parmeter type as "token" in the element And contains some documentation about how this idenfier search parameter is used in the element such as "SDS User Id (i.e. http://fhir.nhs.net/sds-user-id
FHIRBASETEST26 FHIR Conformance Profile Checking - LocationResourceType Given I am using the default server And I am performing the "urn:nhs:names:services:gpconnect:fhir:rest:read:metadata" interaction And I author the request for retrieving the conformance statement for the FHIR server Then the response contains the resource type supported as "Location" in the element And contains the operation supported for this Location resource type as "read" in the element And contains the value as "versioned" in the element And contains the value as "false" in the element And contains the value as "false" in the element And contains the search parmeter name as "identifier" in the element And contains the search parmeter type as "token" in the element And contains some documentation about how this idenfier search parameter is used in the element such as ODS Code (i.e. http://fhir.nhs.net/Id/ods-organization-code Y12345) OR ODS Site Code (i.e. http://fhir.nhs.net/Id/ods-site-code
FHIRBASETEST27 Conformance profile supports the gpc.getcarerecord operation Given I am using the default server And I am performing the "urn:nhs:names:services:gpconnect:fhir:rest:read:metadata" interaction And I author the request for retrieving the conformance statement for the FHIR server Then the response contains the name of the operation supported as "Get Care Record" in the element And contains the operation definition as " OperationDefinition/gpc.getcarerecord" in the element. Check the name element of the operation is "gpc.getcarerecord" and that the operation reference allows use to see the implemented operation at that endpoitnt (we may just want to check that there is a reference as each different implementation may have a different reference url depending on how the api builds up the operations)
Clone this wiki locally