TestSuite description GetRequestOutcome

This testsuite is designed to verify the GetRequestOutcome contract.

Global variables used
  • webServiceUrl

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/
Install SoapUI according to the documentation.

Setup instructions

  1. Locate the test-suite/[contractName]-directory in your distribution.
  2. Copy the jar-file ‘soapui-support.jar’ to <SoapUI install dir>/bin/ext
  3. Open SoapUI and import the SoapUI project from the above directory, 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 in data.xml to match the contents in your system.
  6. You should now be able to run the test suite!

Testcases

Date Boundaries

Verifies that the result only contains information within the date boundaries for the given patient.

  1. Record-1: A record with record time within the given range, the originalAuthor time, modified time and signature time should before or after the given range.
  2. Record-2: A record with originalAuthor within the given range, the record time, modified time and signature time should before or after the given range.
  3. Record-3: A record with modified time within the given range, the record time, originalAuthor time and signature time should before or after the given range.
  4. Record-4: A record with signature time within the given range, the record time, originalAuthor time and modified time should before or after the given range.
  5. Record-5: A record with record time, originalAuthor time, modified time and signature time within the given range.
  6. Record-6: A record with record time, originalAuthor time, modified time and signature time outside the given range.
The DocumentId's of record 1-5 should be added as a comma-separated list in the expectedDocumentIds field.
The DocumentId's of record 6 should be added in the unexpectedDocumentIds field.
The fields httpHeaderHsaId and logicalAddress should contain values that does not affect the list of RequestOutcome records.

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

CareUnitHsaId Filter

Verifies that the result only contains information with correct CareUnitHsaId for the given patient.
The patient should have several RequestOutcome records, with at least one record from the given CareUnitHsaId.
The DocumentId's of the expected RequestOutcome records should be added as a comma-separated list in the expectedDocumentIds field.
The DocumentId's of ReferralOutcome records 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 RequestOutcome records.

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 RequestOutcome records should be added as a comma-separated list in the expectedDocumentIds field.
The DocumentId's of RequestOutcome records 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 RequestOutcome records.

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.
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 fields httpHeaderHsaId and logicalAddress should contain values that does not affect the list of RequestOutcome records.

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

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 RequestOutcome records.

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 ReferralOutcome records based on the HttpHeader 'x-rivta-original-serviceconsumer-hsaid'.
Enter a PatientId that has more than one RequestOutcomeRecord 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 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