Solving Challenges of Mobile App Testing while Working Remote

Solving Challenges of Mobile App Testing while Working Remote

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 -

  1. 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.
  1. 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.
  2. 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.
  1. 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.
  1. 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. 
  1. 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. Here are some examples of how you can address these problems:

Remote Access to Devices

Real Device Testing

With SOFY’s DeviceLab, you can instantly acquire real devices and install your app so you can be productive testing or debugging your apps.

 

 

 

 

AdHoc Testing

WOrk Remote - Adhoc testingYou can install any build of your app including ones that you created on dev machine, to perform AdHoc testing, 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

Manual Testing SOFYAI -1You can install any build of your app including ones that you created on dev machine, to perform AdHoc testing, 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.

 

 

 

 

Creating Issues with Contextual Data

Ceate IssueThis 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

Work Remote - Test 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

Automation without coding SOFYAI-1Being 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.

 

 

 

 

 

DevOps Integration

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 and check us out at https://sofy.ai.

COVID19 Offer SOFY AI