Mastering the Complexities of Mobile Testing
An interesting statistic recently appeared in TechTarget (from Forbes): “By 2017 more than 270 billion mobile apps will be downloaded worldwide.” You might think, “Wow! that’s a lot of apps.” But here’s an even more significant and telling statistic: 80% of mobile apps downloaded are deleted after just one use.
Mobile tech has become indispensable in our everyday lives. So why is it companies are just now beginning to appreciate the fact mobile solutions require far more testing than traditional software applications and websites? I mean let’s face it, testing client-server based applications and websites was easy! You had one technology platform; one or two form factors and they took months to years to develop (using a waterfall approach). Testing time was ample and end-users were, for the most part, patient. Then again, there weren’t any app stores to post bad reviews in either.
Oh how times have changed. Today’s mobile users are notoriously impatient. And if a user has a bad experience with your mobile solution, you better believe they’ll let everyone know by posting bad reviews in the app stores and across social media. Mobile users don’t care if you tested the solution on every device and operating system if they have a bad experience on the device they’re using.
Any competitive business that is driven to succeed recognizes that intuitive, well-crafted mobile apps are a key differentiator to achieve business drivers and sustain growth. This is why it’s imperative for companies to master the complex art of mobile testing by adopting a mobile testing strategy and investing more heavily in mobile testing.
So how does an organization best go about mastering the art of mobile testing?
Develop a mobile testing strategy. It is important to thoroughly understand the adequacy of your existing testing resources and capabilities to identify any gaps (e.g. mobile testing tools, processes, skill sets). Mobile testing presents myriad new challenges and complexities such as additional form factors, network security, offline vs. online, accommodating dichotomous platforms (native, hybrid, web), integration, speed, performance, etc. And while most companies have QA testers, they still lack the processes, skills, tools, devices and resources necessary to get the job done effectively and efficiently when it comes to testing for mobile. Yet the very success of your organization’s mobile strategy relies on your mastery of these challenges.
Your testers need to understand mobile. Testers must work closely with developers and usability designers not only to ensure they understand the requirements, but also to ensure they offer suggestions that will expedite development. Only a thorough understanding of mobile application types—including native, web and hybrid—will enable your testers to determine the appropriate breadth of your testing scope. Many mobile solutions fail to deliver great user experiences and are immediately deleted simply because testers didn’t understand all the complexities and nuances of testing for mobile, and hence failed to account for these when formulating their test plans, cases and scripts.
Make sure you have the right tools. I recently assisted a client with a testing proof-of-concept (POC) to identify the best solution(s) for their mobile testing requirements. The results and recommendations of the POC were not what the client had expected. In fact, the testing solution they had originally selected was not the final recommendation. Why? Because after gaining a complete understanding of the client’s mobile solution, including features, functionality, workflows, connectivity requirements, and test cases, the best testing solution(s) became clear long before a single test script was written.
In today’s market, many great testing solutions are available, whether cloud-based or on-premises. However, some solutions are geared more for developers to use in unit testing; some only test mobile apps (and not web) while others require compiling your mobile app source code, adding proprietary testing framework extensions. Still others only require access to binary files (.apk and .ipa) with no customization at all. And don’t forget about the problem of testing on all targeted devices. Because emulators just won’t cut it. Sure, they provide an efficient way to test in an iterative development process. But emulators won’t allow you to test under all possible user scenarios (e.g. network connectivity, offline, user experience). The only comprehensive way to adequately test your mobile application is by using actual physical devices in real-world situations. So when choosing your mobile testing tools, make sure it accommodates all your test cases and criteria to ensure you deliver the best user experience possible.
Network Connectivity. One of the primary reasons users delete mobile apps is because they cannot use it when they need to. Most mobile apps rely on network connectivity to function properly. So testing your mobile solution under various connectivity conditions is critical (e.g. offline, WiFi, cellular only, on-then-offline, cellular then WiFi, and vice versa). If users in remote areas experience limited or spotty connectivity, you need to design and test your mobile app to perform under disconnected or offline conditions. And while this is one of the most commonly overlooked test cases, it is absolutely critical for ensuring a great user experience.
Manual vs. Automated. Clients often ask, “Can’t we just automate everything?” But the answer is never a simple one. Sure, automated testing delivers the best value once you have developed and launched your app into production and need to perform constant regression testing to further enhance your mobile solution. But when it comes to new mobile solution development initiatives, manual testing is generally recommended—especially in an agile delivery process.
Some final words: remember that your mobile testing strategy should always facilitate alignment between your testing resources and processes, business drivers, user expectations and best practices. Though they may not realize it, many organizations already possess the resources and skill sets necessary to undertaking mobile testing. This includes a strict attention to detail, creative, outside-the-box thinking, and the know-how to ask the right questions to uncover edge cases and ensure the best possible user experience. On the other hand, despite having developed one or more enterprise apps, many companies still lack the right resources, tools, processes and skills to test their mobile applications properly. Propelics can help overcome these challenges and assure your target users don’t delete your app before they get a chance to reap its benefits. So give us a call. Let’s get started.