Platform 2.0 Beta Testing
Introduction
We have been having elaborate discussions on Talk and PM Calls to zero in on the best possible testing methodology that can be adopted to test Platform 2.0 Beta. Here is the broad outline of how we plan to proceed :
RefApp based Testing
In the field, the Platform will always be used with Reference Application running on top of it. Therefore, a major portion of User Acceptance Testing currently involves running Reference Application tests on top of Platform 2.0 Beta.
REST endpoint testing
Platform 2.0 offers a completely REST'ful architecture to interact with the core services. This REST-ful architecture is realized by the FHIR module and the REST-WS module. Although unit-tests in these modules confirm that the controller methods behave as expected but in order to exercise the end-to-end scenario based integration testing for the platform's REST API, we plan to manually hit these endpoints on uat-paltform.openmrs.org and ensure they behave appropriately.
How to help test Platform 2.0 Beta
We are utilizing Zephyr for JIRA. It is recommended that you watch this 15 min video to become a Zephyr expert!! \m/
We have created 2 Zephyr Test-Cycles; one for RefApp based testing and other for REST endpoint testing. The details on how to contribute to each is descibed in the sections below
Steps to contribute to "RefApp based Testing"
If you haven't already, watch this 15 min video to get used to Zephyr
Click on an un-executed test (Column name : Issue Key )from Test Cycle named : Platform 2.0 Beta and OpenMRS 2.4-SNAPSHOT Functional Tests
@Burke Mamlin has prepared a Google Sheet that enlists these Tests in a decreasing priority order. Feel free to pick up the high priority one's from the top of the list.
This should open up the Test Case page which should look like
Scroll down to the Test Execution Section and click the E button on the rightmost end of the row containing Test Cycle value as Platform 2.0 Beta and OpenMRS 2.4-SNAPSHOT Functional Tests
Open up the execution environment i.e uat-platform.openmrs.org/openmrs in a new tab/window
Follow steps 5 and 6 described by the QA team on How to execute a Test Case
Steps to Contribute to "REST endpoint Testing"
As descibed in the Introduction section, we plan to manually test the REST-enpoints defined by the REST-WS and FHIR modules.
Add a Test Case
Pick up a REST endpoint from the documentations of REST Web Services API For Clients or FHIR: OpenMRS Strategy, Tools, FHIR API, and Help. You might also find REST Web Service Resources in OpenMRS 1.9 useful
Head over to the Test Cycles for Platform JIRA project
From the Menu, choose Tests->Create a Test
Describe a Test Case in the 'Summary' field. Summary must include functionality name and short summary of the Test Case (in case of complicated Test Cases)
In the 'Description' field you can also add more details e.g. user story or leave it empty if 'Summary' field provides enough information
In 'Attachment' field you can add screen shot or short movie to help localize the issue
'Label' field should contain key words used for search purposes
If the Test Case is meant for an automated test, add a link to automated test code in 'Automated' field
Follow Step 2 descibed by the QA team in How to create a Test Case
Note the Issue No of the Test you just created and head back to the Test Cycles for Platform JIRA project page
Click the configure button on the right hand side of Platform 2.0 Release Tests test cycle and click Add Test from the drop down menu
Enter the Issue Number of the test you just created to add it to the Plarform 2.0 Release Tests Test Cycle
Execute a Test Case
If you haven't already, watch this 15 min video to get used to Zephyr
Click on an un-executed test (Column name : Issue Key )from Test Cycle named : Platform 2.0 Release Tests
This should open up the Test Case page which should look like
Scroll down to the Test Execution Section and click the E button on the rightmost end of the row containing Test Cycle value as Platform 2.0 Release Tests
Open up the execution environment i.e uat-platform.openmrs.org/openmrs in a new tab/window
Follow steps 5 and 6 described by the QA team on How to execute a Test Case