The primary objective of this guide is to assist you in effectively navigating Android fork or standard application, as well as provide detailed, step-by-step instructions for performing basic web-based configurations that can be tested within the application itself. By following this guide, you will gain the ability to configure and set up all the essential items required for successful testing.
It is important to note that the configurations that will be shown here are of a basic nature. To test the feedback module, a specific guide has been created for this purpose. To access the specific guide, click here.
An effective test matrix has been thoroughly designed to capture the overall results of all tests. This matrix covers the essential attributes and elements that require testing, along with their corresponding expected results. In addition, it provides a space to enter the actual test results and conveniently mark them as pass or fail.
Table of contents:
PSI Android Fork testing should be conducted on an Android v.6+ device. Do not attempt to conduct this testing via your web browser. We do not recommend testing on Android emulators as some functions may give false negatives during testing.
Testing concepts
In the testing field, some concepts and standards are necessary to conduct comprehensive testing. At a minimum, this includes:
Test case: a test case is a detailed set of conditions developed to verify the functionality of a specific feature.
Pre-conditions: specific criteria that must be met to execute the test case.
Expected result: expected behavior when executing a specific action or input in a system, application or process
What servers and users to use
Server | Description | Credentials to be used |
---|---|---|
The server is a copy of the production environment, which is copied nightly and overwritten every day. It is the perfect environment for testing because configuration changes will last for one day. | Use the same real-life community, workers, providers, supervisor. Just change the password. If the account doesn’t work, request account activation via | |
This server is a stable copy of the production environment, which is copied approximately every 2–3 months | The accounts on this server are different from those on the production server. If you don't have a user account, please request one by clicking on the following link. https://helppsi.freshdesk.com/es/support/home |
Do not use production server - you don't want to mess the data in production.
Recommendation:
The android app is not optimized for accounts with extensive access to numerous programs and datasets, resulting in prolonged login times when using the DHIS2 Android application. Therefore, it is advisable to avoid assigning an excessive number of programs to a single user, as this may significantly impact performance and efficiency
Testing Programs
In DHIS2, you have the ability to define customized programs comprising various stages. These programs play a crucial role in the "tracker" functionality, enabling you to thoroughly track individual records. DHIS2 offers two types of programs that you can create:
Tracker program: A program to record a single event without registration.
Event program: A program to record single or multiple events with registration.
Verify that the event programs assigned to the user are loaded correctly
Pre-conditions:
1 | Log in to the selected server using a user account that has the necessary permissions to create a program |
---|---|
2 | Have organization units available for selection in the programs. |
Create a data set, to create an event program proceed as follows:
Maintenance/Program/Program
Click on the
plus
button.Select to add an event program.
Fill in the form with the corresponding items.
Select the
Access
tab.In the organization units section, select the organization units that will have access to this program.
7. Add the users that will have access to the program in the roles and access section.
8. Select “Can view only” in metadata and “Can capture and view” in Data.
9. Log in to the Android Fork using the user that was added in the sharing settings.
Expected results: The event programs assigned to the user should load accurately upon logging into Android Fork.
Verify that the tracker programs assigned to the user are loaded correctly
Pre-conditions:
1 | Log in to the selected server using a user account that has the necessary permissions to create a program |
---|---|
2 | Have organization units available for selection in the programs. |
Create a data set, to create an event program proceed as follows:
Maintenance/Program/Program
Click on the
plus
button.Select to add a tracker program.
Fill in the form with the corresponding items.
Select the
Access
tab.In the organization units section, select the organization units that will have access to this program.
7. Add the users that will have access to the program in the roles and access section.
8. Select “Can view only” in metadata and “Can capture and view” in Data.
9. Log in to the Android Fork using the user that was added in the sharing settings.
Expected results: The tracker programs assigned to the user should load accurately upon logging into Android Fork.
Program rules - Assign competency in assessments
Pre-conditions:
1 | Log in to the selected server using a user account that has the necessary permissions to create program rules |
---|---|
2 | Tracker and event programs created successfully |
Create a program rule, to create program rule proceed as follows:
Maintenance/Program/Program rule
Click on the
plus
button.Enter program rule expression.
4. Define program rule actions.
5. Log in to the Android Fork and verify the program rule.
Expected results: The program rule should work correctly, in this case the program rule is specifically designed to calculate the competency class, which is automatically determined by considering all correctly answered critical questions and the non-critical questions with a score of 89.9 or higher.
Program rules - Hide/Show
Pre-conditions:
1 | Log in to the selected server using a user account that has the necessary permissions to create program rules |
---|---|
2 | Tracker and event programs created successfully |
Create a program rule, to create program rule proceed as follows:
Maintenance/Program/Program rule
Click on the
plus
button.Enter program rule expression.
4. Define program rule action
5. Log in to the Android Fork and verify the program rule.
Expected results: This program rule enables you to hide or show a designated question or section based on a condition of your choice. Once the specified condition is met, the question or section will be promptly and accurately displayed.
Option set
Pre-conditions:
1 | Log in to the selected server using a user account that has the necessary permissions to create option set |
---|---|
2 | Tracker and event programs created successfully |
Create a option set, to create a option set proceed as follows:
Maintenance/Other/Option set
Click on the
plus
button.Enter the name and options.
4. Log in to the Android Fork and verify the option set.
Expected results: When you click on the question that has been assigned an option set, the corresponding options should be displayed.
Legends
Pre-conditions:
1 | Log in to the selected server using a user account that has the necessary permissions to create legends |
---|---|
2 | Tracker and event programs created successfully |
Create a legend, to create a legend proceed as follows:
Maintenance/Other/Legend
Click on the
plus
button.Enter the name, values and color.
4. Log in to the Android Fork and verify the legend.
Expected results: The legend should dynamically appear based on the selected option in the question. It should be displayed next to the question, showcasing both the selected text and its corresponding color.
Saving data without internet connectivity
Pre-conditions:
1 | Tracker and event programs created successfully |
---|---|
2 | Login to the application correctly |
3 | Deactivate the Internet connection |
Select a program.
Fill in the fields.
Save the program.
4. The application should display a “Cycle” icon in the data set saved.
Expected results: The form should be saved on the device, but the device is not connected to the Internet, so the data is not sent to DHIS2, therefore the application should display a gray "cycle" icon.
Testing data sets
Data entry in DHIS2 is effectively organized using data sets. A data set serves as a collection of data elements grouped together for streamlined data collection. In distributed installations, data sets also define portions of data for seamless export and import between different instances of DHIS2. For example, data can be transferred from a local installation at a district office to a national server. Data sets are not directly linked to the data values themselves, but rather through their associated data elements and frequencies. As a result, modifications, deletions, or additions to a data set can be made at any time without impacting the raw data already captured in the system. However, it is important to note that such changes will naturally affect the process of collecting new data.
Once you have assigned a data set to an organisation unit, that data set will be made available in Data Entry for the organisation units you have assigned it to and for the valid periods according to the data set's period type.
Verify that the data sets assigned to the user are loaded correctly
Pre-conditions:
1 | Log in to the selected server using a user account that has the necessary permissions to create a data set |
---|---|
2 | Have organization units available for selection in the data sets. |
Create a data set, to create a data set proceed as follows:
Maintenance/Data Set/Data Set
Click on the
plus
button.Fill in the form with the corresponding items.
In the organization units section, select the organization units that will have access to this dataset and click on the
save
button.
5. Log in to the Android fork using a user who has been assigned the selected organization unit in the previous step.
6. Add the user or group of users in the sharing configuration corresponding to the dataset and assign it the option Can capture and view
7. Log in to the Android Fork using the user that was added in the sharing settings.
Expected results: The datasets assigned to the user should load accurately upon logging into Android Fork.
Verify that the category and category combination are visible on the application
This test verifies the successful assignment of user permissions to view the category and category combination.
Pre-conditions:
1 | Log in to the selected server using a user account that has the necessary permissions to create a data set |
---|---|
2 | Create a dataset successfully |
Add the user or user group to the sharing settings.
Assign permissions to the user to view the category and category combination.
3. Log in to Android Fork using the user that was added to the sharing settings
4. Open the dataset containing the configured category
Expected results: The user can view the category and the category combination, but cannot modify the text.
Verify the validation rules
1 | Log in to the selected server using a user account that has the necessary permissions to create a data set |
---|---|
2 | Create a dataset successfully |
3 | Create validation rules successfully |
Log in to Android Fork using the user that has access to the created dataset.
Open the Data set
Verify the validation rules created.
Expected results: The application should display a validation message and highlight the fields that do not comply with the validation rule.
Saving data sets without internet connectivity
1 | Log in to the selected server using a user account that has the necessary permissions to create a data set |
---|---|
2 | Create a dataset successfully |
3 | Create validation rules successfully |
4 | Login to the Android Fork and open the data set |
5 | Deactivate the Internet connection |
Fill in the form.
Tap on the
Save
button.
3. The application should display a “Cycle” icon in the data set saved.
Expected results: The form should be saved on the device, but the device is not connected to the Internet, so the dataset is not sent to DHIS2, therefore the application should display a gray "cycle" icon.
Send the data stored to DHIS2
1 | Log in to the selected server using a user account that has the necessary permissions to create a data set |
---|---|
2 | Create a data set successfully |
3 | Create validation rules successfully |
4 | Login to the Android Fork and open the data set |
5 | Have data stored on the device |
Tap on the "Cycle" icon in the upper right corner.
You can send each dataset individually, clicking on its cycle icon to the right of its name
2. Tap on the Send
button
Expected results: A message should appear indicating that all data have been sent to DHIS2.
Verify the data sent to DHIS2
1 | Log in to the selected server using a user account that has the necessary permissions to create a data set |
---|---|
2 | Create a data set successfully |
3 | Create validation rules successfully |
4 | Login to the Android Fork and open the data set |
5 | Data sent to DHIS2 correctly |
Log in to the server where the data was sent to.
Open the data entry
Select the data set filled in
4. Compare data
Expected results: The data displayed on the server must match the data displayed in the application.
Testing Analytics
Analytics
Pre-conditions:
1 | The application must have completed assessments |
2 | Select the analytics section located at the bottom of the home page |
Steps:
Check the charts.
Check that it is possible to move from one tab to another.
Tap on the three dots in the upper right corner of the chart.
Change the view type of the charts
View as bar | View as line | View as value | View as table |
---|---|---|---|
Expected results:
The application should allow switching to another tab, and the charts should update correctly, as well as the view types should be available.