Mobile is eating the world—or so some say, at least—and it’s increasingly likely that your organization is now developing mobile applications in addition to traditional non-mobile applications. These may be new applications or mobile versions of existing applications.
With the trend toward mobile development comes a need to adjust your testing strategy to support these mobile applications. Although you can generally add mobile testing to your routine without totally overhauling your test strategy, you’ll likely need to make at least some adjustments to integrate mobile testing into your workflow.
What changes can you make to your testing process to support the addition of mobile apps? Below I discuss some of the changes that need to be made within an organization’s testing strategy in order to support mobile testing and strive to ensure application quality and reasonable delivery speed.
Mobile Testing in DevOps
Mobile application testing presents distinct challenges that do not exist in traditional application testing. One of these challenges pertains to test coverage. The market for mobile is highly fragmented, meaning that a large number of devices exist that come in the form of distinct models that often utilize different operating systems and platforms. These conditions all need to be taken into account. It becomes crucial for an organization to plan to test their mobile applications on each relevant combination of these factors. Some related factors to consider when deciding the scope of your mobile testing strategy include:
- Device popularity - Some devices are more popular than others. If a device is extremely popular in your market, or of growing popularity, then it is likely important to ensure that your mobile application works properly on this device. Imagine an instance where you are translating a web application into a mobile application as well. Checking analytics data collected for your website may help to narrow down the devices that are most popular among your user base.
- Screen size - Testing on devices with a variety of screen sizes can also provide great value. Varying screen size may have an effect on the display of your application. Testing across devices with a variety of screen sizes will help your development organization provide a positive user experience for those utilizing the application as it relates to application display and function.
- OS version - Some features within a mobile application may rely on functionality specific to an OS. As new versions of particular operating systems are released on mobile platforms, it is important to make sure that your mobile application continues to function without issue. Proper testing can help to verify that your application continues to work in newer versions of the OS, and functions properly in other stable versions of the OS that you wish to support.
Stepping Up Your Game to Support Mobile Testing
So now that some of the challenges that surround mobile testing have been pointed out, let’s talk about how to evolve your current testing strategy to provide adequate test coverage for your mobile applications. There are a variety of solutions for integrating mobile testing into your test plan.
- Leverage cloud testing tools for device coverage - One such tool is the Real Device Cloud from Sauce Labs. This will allow you to develop automated tests that can run across many device/OS configurations. If your mobile app is a hybrid app built to run on iOS and Android devices, this could provide a fast and thorough way to test your application on both platforms. Sauce Labs does the work by providing the device configurations and allowing you to test across these configurations in parallel so that you can be sure that your mobile application features are functioning properly—across devices and platforms.
- Parallel testing is your best friend - Saving time where you can is going to be of great importance to your organization, considering the scope required to provide adequate mobile testing. Parallel testing is one strategy you can employ. By running your mobile application tests in parallel where possible, you can ensure application quality and save time. For instance, you can save considerable time in the case where your application will be running on both iOS and Android devices by preparing a test and then running in parallel on devices for both platforms.
- Integrate with your CI tool - Continuous integration and continuous testing are crucial tactics in helping organizations find bugs in their applications early on in the development process. And these concepts are for all applications, both traditional web applications and mobile applications. Automate your mobile application tests where you deem necessary, and integrate them with your continuous integration tool. This will help your organization discover potential issues in the code earlier on, saving you time and heartache as the delivery date draws near. With mobile applications that are provided to users via a gatekeeper such as Google Play or the App Store, this is particularly important, as there are often guidelines to be followed that can take time. In other words, it’s not especially easy to get your next release out the door, so it is extremely important to avoid major bugs that find their way into production.
Mobile testing can prove to be quite challenging given the wide array of devices and platforms that currently exist in the fragmented mobile landscape. Taking the time to leverage concepts and tools that support greater test coverage and reasonable delivery speed can go a long way towards helping your organization get in the game with a solid mobile testing strategy.