Testing
We did a lot of compatibility tests on different mobile devices and simulators, interactively simulating user journeys to check app functions as intended with debug prints along the way to perform manual checks, as well as user acceptance tests.
Unit/Integration Testing
We did this manually, reporting any bugs that we found (as shown in the Bug List table on the Evaluations page).
Unit Testing
To do unit testing, we used print statements, and running the app on the simulator. We first tested the functionality individually to find any errors. We would report any bugs that we found and try to fix it as soon as possible. Some unit tests that we did:
Integration Testing
Once a lot of the functions had been written, we performed integration testing mainly through testing that the data that the app had collected was being used correctly where it was required. For example:
- The tracking of steps and calls data was being used to draw the graphs against the well-being scores
- The data that was collected at the beginning was being correctly used to:
- Fill in the gaps in the pre-constructed message
- Send of data to the linode server
- Displaying in the contact history and contacts age
- ...etc.
Compatibility testing
Test results table
Device | Weblink and app | Making Calls | Sending Texts | Attach report | Saving Image | Weekly Nudge | Sending Data | Create Graph | Rate WB Score | Smooth UI |
---|---|---|---|---|---|---|---|---|---|---|
iPhone 7 Plus (iOS 13.3.1) | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y |
iPhone SE(iOS 13.3) | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y |
iPhone 11 Pro (iOS 13.3.1) | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y |
To test the compatibility of our app, we ran it on different devices and tested for certain functionalities.
We got our client to run the app on their phone (iPhone 6) as well to ensure that everything was working smooth.
During the compatibility testing, we encountered some errors:
Bug Found | Priority | Fixed? |
---|---|---|
Detailed look at database shows weekly calls is at 0, when it should be 2, all other data is functional. | Medium | Y |
Oversized network contact history label | Low | Y |
User acceptance testing
At the end of prototype 1:
A few versions of prototype is directly sent and tested by the potential users. User feedback we have received so far:- larger buttons
- a pre-input minimum steps as a baseline
Now:
Once we had finished making the app, we ran through it with our client. Our client showed ran through the app with potential users and gave us their feedback.- The users liked how at the beginning of the app; they would be assisted when setting up the app.
- They liked that they could share an image of their well-being diary as it was a good conversation starter
- They liked that they would be nudged to talk to their core network
- They liked that they would be nudged if they didn’t walk enough
- They liked the user interface, especially that the messages were pre-formatted
- The potential users didn’t really understand the purpose of sending across the fake(anonymised) and real data, but once the outbound postcode heat map (UCL team 28) was explained, they really liked it.