Performance Test Plan
Version History:
Version# | Date | Modified By | Description of Modification |
---|---|---|---|
1.0 | 2/10/2016 | Sailaja Adusumilli | Initial Version |
Overview
Performance Test Requirements
There are two goals for Performance Testing: one is to determine how many concurrent messages CONNECT 4.6 can handle in one minute and the other is to prove that CONNECT 4.6 can handle 1600 concurrent messages per minute. As the goal is to only test for the CONNECT gateway processing performance and not the reference adapters, lightweight adapters were used for both initiating and responding configurations.
Approach
Important note regarding UDDIConnectionInfo.xml and internalConnectionInfo.xml
As of CONNECT 5.1, both files have been replaced with the more versatile exchangeInfo.xml and internalExchangeInfo.xml files. For users of CONNECT 5.0 and earlier versions, substitute references to these new files with the original uddiConnectionInfo.xml and internalConnectionInfo.xml files
- Testing will be restricted to ensure results reflect gateway capabilities and not tertiary components, such as hardware configuration or adapter performance.
- The gateways will be setup in an ideal/optimized configuration to test upper limitations of CONNECT, similar to what was done in the 4.0 performance testing.
- Tested services will include: PD, QD, RD, DS and X12.
- Two rounds of testing will be performed to test each of the initiating (entity, message proxy) and receiving (NHIN) interfaces.
- All initiating machines will be HCID 1.1 and all responding machines will be HCID 2.2.
- Metrics will be captured bidirectionally on each CONNECT supported application servers.
- One exchangeInfo.xml is to be duplicated on all servers.
Hardware and Software Requirements for Testing
CONNECT 4.6 resources and environment setup details for Performance Test are as follows:
- 1 Linux server with CONNECT on WebLogic 12.1.1
- 1 Solaris server with CONNECT on WebSphere 8.5.5.3
- 2 Windows servers with CONNECT on Wildfly 8.2.1
- 1 Linux server with CONNECT on JBoss 7
- 1 Linux server with CONNECT and as a loadUI control machine
- 1 Linux server with CONNECT on Wildfly
- minimum 8GB of RAM on each machine
- minimum 50 GB of hard disk space
- Processor details ( if required need to update )
- MySql(5.1), Java SDK 1.6
- self-signed certificates shared among all gateways
- CONNECT 4.6 deployed on each application server that includes PerformanceTest jar.
OS/AS | IP | Application server | Paired Application Server |
---|---|---|---|
Solaris | 192.168.36.3 | WebSphere 8.5.5.3 | WildFly 8.2.1 |
Windows | 192.168.18.4 | WildFly 8.2.1 | |
Linux | 192.168.35.4 | WebLogic 12.1.1 | WildFly 8.2.1 |
Linux | 192.168.35.63 | WildFly 8.2.1 | |
Linux | 192.168.35.20 | JBoss 7 | WildFly 8.2.1 |
Windows | 192.168.34.2 | WildFly 8.2.1 | |
Linux | 192.168.35.8 | WildFly 8.2.1 & LoadUI | WildFly 8.2.1 |
Test Framework
The testing framework will be built using SoapUI and LoadUI. Metrics will be obtained through LoadUI for response times, while JConsole will be used for CPU and memory usage. The test framework will contain following test components:
- SoapUI scripts will be used to send requests to CONNECT Gateway.
- LoadUI projects will be used to perform the actual load test. This includes, It will be used to capture and report response time.
- JConsole will be used to capture and report the CONNECT gateway JVM metrics, CPU utilization and Memory usage. nd to simulate concurrent messaging.
- Custom adapters will be used to quickly respond to service requests to eliminate the processing time that a full adapter would require. The adapters are available at : Plugins/PerformanceTestTools
- Test Scripts are available at : //shared-folder/Software/Performance 4.6/ConnectPerformanceTest. Follow Configuration instructions for test setup and execution.
Test Cases
# | Test Case | Description | LoadUI Adapter |
---|---|---|---|
1 | Patient Discovery |
| CONNECTLoadTestAdapter - gov.hhs.fha.nhinc.patientdiscovery.loadtest.PatientDiscoveryBO |
2 | Document Query |
| CONNECTLoadTestAdapter - gov.hhs.fha.nhinc.documentquery.loadtest.DocumentQueryBO |
3 | Document Retrieve |
| CONNECTLoadTestAdapter - gov.hhs.fha.nhinc.documentret |
4 | Document Submission |
| CONNECTLoadTestAdapter - gov.hhs.fha.nhinc.docsubmission.loadtest.DocumentSubmissionBO |
5 | X12 RealTime |
| CONNECTLoadTestAdapter - gov.hhs.fha.nhinc.x12.loadtest.CORE_X12DSRealTimeBO |
6 | X12 BatchRequest |
| CONNECTLoadTestAdapter - gov.hhs.fha.nhinc.x12.batch.request.loadtest.CORE_X12DSBatchRequestBO |
7 | X12 BatchResponse |
| CONNECTLoadTestAdapter - gov.hhs.fha.nhinc.x12.batch.response.loadtest.CORE_X12DSBatchResponseBO |