There is a lot being written on how the world is going to change in a post COVID-19 world. There is a belief that working remote will be part of the new normal even after social distancing restrictions are lifted. 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 expertise that it 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.
SOFY is a mobile app testing platform that address these problems in an elegant way and our customers have seen dramatic increase in productivity by leveraging these capabilities.
Remote Access to Devices
With SOFY’s DeviceLab, you can instantly acquire real devices and install your app so you can be productive testing or debugging your apps.
With adhoc testing, you can instantly test any build of your app and validate your changes. You can view changes to the UI, and inspect device logs to analyze problems and crashes. The Action Bar next to the device allows you simulate physical interaction with the device.
Manual Testing on steroids
By using a cloud-based testing platform like SOFY, can transform the manual testing from an analog world to digital. You can get insights into manual testing such as the execution steps so that when an issue is identified the developer knows the exact repro steps before an issue occurred which is very helpful in root cause analysis.
Creating Issues with Contextual Data
This example shows how the act of creating an issue is made rich by automatically bringing screenshot of the device, attaching device logs, device info, etc. The issue can then be pushed to communication channels like Teams, Slack or Issue tracking systems like Azure DevOps, Jenkins.
Viewing Testing Results
Being able to view Test Results showing each step of the test with its screenshot and a graphical rendering of the performance enables for quick diagnosis and debugging issues.
Automation Without Coding
Being able to record your tests and to be able to playback both interactively and on-demand will enable regression testing, avoid device contention issues. In addition, it makes it easy to convert manual tests to automation.
On Demand Access to Real Devices for Testing
By scheduling your tests on any device on-demand, you can avoid device contention issues.
With DevOps integration, you can invoke automated tests across any number of devices to regression testing. Once complete, the results can be inspected, and the recording played back.
Through these examples, you can see how SOFY can enable mobile app teams to be more productive during development. We look forward to thoughts on the topic.