The COVID-19 pandemic has for ever changed the way we work and collaborate with each other. There is a belief that working remote will become part of the new normal even after social distancing restrictions slowly go away. This presents interesting challenges for many professions. Here are some unique challenges that mobile app development teams face while working remotely –
Access to Real Devices: Given the plethora for Android and IOS devices in use, teams usually have a collection of devices that is shared across the team members to allow for testing and debugging on real devices. With teams forced to work remote, many companies have had to procure a large number of devices to which are given to individual team members so they can continue testing on real devices. This incurs cost, does not scale, and brings with it challenges of device security, among other considerations.
Physical proximity of developers and testers fosters collaboration that makes troubleshooting easy. For example, when tester experiences an application crash during testing, tester can easily show the problem in real-time which enables developers to perform root cause analysis. In the absence of physical proximity, the tester needs to gather all the relevant information including steps leading up to the crash, screenshots, device logs, stack dump, etc. When working with a real device, these are time consuming tasks that require multiple tools and a level of expertise that is hard to find in manual testers.
On-demand access to devices becomes important to eliminate contention and coordination. Remote working makes this task difficult. Automation is a great way to solve this problem provided automation can be done without incurring excessive additional cost and does not become a project of its own. With automation, tests can be scheduled on-demand without worrying about device contention.
With automation, regression testing becomes easy since it is easy to schedule test runs in any combination of client app versions and backend and can be performed as often is needed. When integrated with CI/CD, it is easy to make it part of the devops cycle.
Testing of multi-user apps presents challenges since it requires multiple testers to synchronize user interaction to mimic real-world scenarios. Alternatively, a user can simulate the scenario with multiple devices. Take the example of web conferencing app where there is some coordination required between the host and the guest to test real world scenarios. This problem is exacerbated when testers are working remote and coordination becomes difficult. Multi-user communication apps like Zoom, Teams and Webex have become the essential productivity apps for a world in a lockdown. Automation or partial automation can address these challenges.
Manual testing makes it difficult to get full visibility into productivity of the testing team. When testers are remote in their homes, the problem is even more exacerbated. The principle reason for lack of visibility is because manual testing is performed in an offline mode. However, if you are an App Testing company, there is a customer expectation of visibility into level of testing which can be challenging in the current remote working environment. By moving manual testing to digital domain, you can gain visibility to the actual testing performed and are able to track productivity of the testers.
While our original mission at SOFY was not to solve these specific issues, we built a product that addresses these problems in an elegant way and our customers have seen dramatic increase in productivity by leveraging these capabilities.