TestSuite description GetVaccinationHistory

This document describes the testcases used to verify the implementation of GetVaccinationHistory before integration with the national platform.

Tools

SoapUI

The testsuite uses SoapUI to verify the implementation. Documentation of SoapUI can be found at http://www.soapui.org
Link to download site: http://sourceforge.net/projects/soapui/files/soapui/4.5.2/
Install SoapUI according to the documentation.

Setup instructions

  1. Unzip the testsuite package.
  2. Copy the jar-file ‘soapui-support.jar’ to <SoapUI install dir>/bin/ext
  3. Open SoapUI and import the testsuite project, choose ‘Import Project’ from the File-menu.
  4. If your WebService endpoint requires a SSL Certificate, this can be configured from the Preferences (in the File menu). In the Preferences window open the ‘SSL Settings’ tab and import the Keystore containing the Client Certificate.
  5. Update test-data to match the contents in your system.
  6. You should now be able to run the test suite!

Testcase description

Date Boundaries

Verifies that the result only contains information within the date boundaries for the given patient.
This test will require at least eight VaccinationMedicalRecords:

  1. A record with DocumentTime within the given range, the AuthorTime and SignatureTime should before or after the given range.
  2. A record with AuthorTime within the given range, the DocumentTime and SignatureTime should before or after the given range.
  3. A record with SignatureTime within the given range, the DocumentTime and AuthorTime should before or after the given range.
  4. A record with DocumentTime and AuthorTime within the given range, the SignatureTime should before or after the given range.
  5. A record with DocumentTime and SignatureTime within the given range, the AuthorTime should before or after the given range.
  6. A record with SignatureTime and AuthorTime within the given range, the DocumentTime should before or after the given range.
  7. A record with SignatureTime, DocumentTime and AuthorTime within the given range.
  8. A record with SignatureTime, DocumentTime and AuthorTime outside the given range.
The DocumentId's of case 1-7 should be added as a comma-separated list in the expectedDocumentIds field.
The DocumentId's of case 8 should be added in the unexpectedDocumentIds field.
The fields httpHeaderHsaId and logicalAddress should contain values that does not affect the list of VaccinationMedicalRecords.

Variables used
  • httpHeaderHsaId
  • logicalAddress
  • patientId
  • patientIdType
  • timePeriodStart
  • timePeriodEnd
  • expectedDocumentIds
  • unexpectedDocumentIds

CareUnitHsaId Filter

Verifies that the result only contains information with correct CareUnitHsaId for the given patient.
The patient should have several VaccinationMedicalRecords, with at least one record from the given CareUnitHsaId.
The DocumentId's of the expected VaccinationMedicalRecords should be added as a comma-separated list in the expectedDocumentIds field.
The DocumentId's of VaccinationMedicalRecords from other CareUnit's should be added as a comma-separated list in the unexpectedDocumentIds field.
The fields httpHeaderHsaId and logicalAddress should contain values that does not affect the list of VaccinationMedicalRecords.

Variables used
  • httpHeaderHsaId
  • logicalAddress
  • careUnitHSAid
  • patientId
  • patientIdType
  • sourceSystemHSAid
  • expectedDocumentIds
  • unexpectedDocumentIds

Only PatientId

Verifies that the result only contains information with correct PatientId.
Enter a PatientId that is stored in the source system.
The DocumentId's of the expected VaccinationMedicalRecords should be added as a comma-separated list in the expectedDocumentIds field.
The DocumentId's of VaccinationMedicalRecords from other CareUnit's should be added as a comma-separated list in the unexpectedDocumentIds field.
The fields httpHeaderHsaId and logicalAddress should contain values that does not affect the list of VaccinationMedicalRecords.

Variables used
  • httpHeaderHsaId
  • logicalAddress
  • patientId
  • patientIdType
  • expectedDocumentIds
  • unexpectedDocumentIds

NonExisting PatientId

Verifies that the service returns an empty result instead of a Soap Fault if a non-existing PatientId is given.
Enter a PatientId that is not found in the source system.

Variables used
  • httpHeaderHsaId
  • logicalAddress
  • patientId
  • patientIdType

CareContactId Filter

Verifies that the result only contains information for a single CareContact.
Enter a PatientId, CareContactId and SourceSystemHSAid that is stored in the source system.
The fields httpHeaderHsaId and logicalAddress should contain values that does not affect the list of VaccinationMedicalRecords.

Variables used
  • httpHeaderHsaId
  • logicalAddress
  • patientId
  • patientIdType
  • careContactId
  • sourceSystemHSAid

NonExisting CareContactId

Verifies that the service returns an empty result instead of a Soap Fault if a non-existing CareContactId is given.
Enter a PatientId that exists in the source system and a CareContactId and sourceSystemHSAid that is not found in the source system.
The fields httpHeaderHsaId and logicalAddress should contain values that does not affect the list of VaccinationMedicalRecords.

Variables used
  • httpHeaderHsaId
  • logicalAddress
  • patientId
  • patientIdType
  • careContactId
  • sourceSystemHSAid

Http-header Filter

Verifies that the result only contains information with correct PatientId, and that the source system should filter VaccinationMedicalRecords based on the HttpHeader 'x-rivta-original-serviceconsumer-hsaid'.
Enter a PatientId that has more than one VaccinationMedicalRecord in the source system.
Add one or more DocumentId's of records that should be included in the response based on the filtering rules to the field 'expectedDocumentIds'.
Add one or more DocumentId's of records that should not be included in the response based on the filtering rules to the field 'unexpectedDocumentIds'.
The field logicalAddress should contain a value that does not affect the list of CareContacts.

Variables used
  • httpHeaderHsaId
  • logicalAddress
  • patientId
  • patientIdType
  • expectedDocumentIds
  • unexpectedDocumentIds

CareContactId and SourceSystemHsaId

The test verifies that the source system returns a Soap Fault if the sourceSystemHSAid is empty when careContactId has a value.
Enter a PatientId and a CareContactId of a CareContact that should be found in the source system.
The fields httpHeaderHsaId and logicalAddress should contain values that does not affect the list of CareContacts.

Variables used
  • httpHeaderHsaId
  • logicalAddress
  • patientId
  • patientIdType
  • careContactId

SourceSystemHsaId and LogicalAddress

The test verifies that the source system returns a Soap Fault if the logicalAddress and sourceSystemHSAid doesn't match.
Enter a PatientId and a CareContactId and the correct SourceSystemHSAid of a CareContact that should be found in the source system.
The field logicalAddress should not match SourceSystemHSAid.
The field httpHeaderHsaId should contain a value that does not affect the list of records.

Variables used
  • httpHeaderHsaId
  • logicalAddress
  • careUnitHSAid
  • patientId
  • patientIdType
  • careContactId
  • sourceSystemHSAid