“Every once in a while, a revolutionary product comes along that changes everything.”
While Apple’s iPhone wasn’t the first smartphone (RIM was the market share leader at the time with the Blackberry), Steve Jobs was right when he declared the iPhone a revolutionary product. It redefined the smartphone category and established the iPhone, and Apple itself, as a key driver of a revolutionary change in society: a shift to the mobile era.
Today, mobile is everywhere: chances are you’re reading this blog on a mobile device right now. From catchphrases like “There’s an app for that!” to depositing checks by phone, mobile has become an integral part of our daily lives, and therefore, an important consideration for businesses. In fact, according to Gartner, mobility has moved from a #12 priority in 2012 to #2 in 2014. Since mobile projects now receive a higher level of visibility, application quality becomes a key indicator of success. Mobile users have high expectations around performance, functionality, and application stability: if they don’t have a meaningful experience, they will discard the application from their device.
Meeting these expectations increases the importance of mobile application testing. While mobile testing does take planning and often investments in supporting technologies and services, there is no reason to be overwhelmed. The best way to begin is by thinking about your mobile goals: high adoption levels, five-star reviews, and long-term users. Mobile applications aiming to achieve these objectives require three key things in performance testing: usability, performance, and stability.
1. Usability gauges how the user interacts with your mobile application. If they can’t operate your app, they won’t keep it, resulting in poor ratings. Testing your application for usability usually comes down to a few key considerations:
- Accessibility – Your app should allow your user to access what they want, when and where they want it. Measure real user experiences in real network conditions and expand your testing matrix to confirm the app is compatible with all available devices and operating systems.
- Fragmentation – Fragmentation occurs when the app’s process is disjointed, changing the properly organized, easy-to-use operation of the app into a disconnected experience for the user. The best way to catch any potential fragmentation problems is interactive testing.
- Functionality – Automated testing can be set up to check all aspects of the app’s usability throughout the development and testing process, checking all activity on real devices on a regular basis. Automating testing on mobile applications is a crucial step due to the amount of information gained from multiple rounds of testing
2. Performance is critical to earning five-star ratings and engaged, happy users. Performance encompasses the interaction with not only the user, but the other tasks the device may utilize. Performance testing may be one of the more important aspects of mobile testing, but is easily applied with the following key elements:
- User Interface (UI) Performance – According to a 2015 survey by Dimensional Research and HP, 49% of users expect an app to respond in 2 seconds or less, so checking your app’s launch and UI performance is critical to the success of your app. Simulate different types of environments to confirm the app responds quickly and smoothly to a user’s commands.
- Network – It’s great if the app performs well in ideal network simulations, but your app needs to perform perfectly in less than ideal settings. Test real-world network conditions, making sure the app’s actions perform perfectly.
- Engagements – Users expect apps to conform to their needs, from changing device orientation to accepting calls while using the app. Simulate different types of engagements to ensure the app can handle anything from calls and texts to various locations. Gestures have become an integral part of users’ interactions with mobile apps: be sure to check your app’s performance with touch, scroll, swipe, pinch, and multiple device orientations.
3. Stability means it has a smooth, uninterrupted experience free from error messages or crashes for your user. Even if your app has aced the usability charts and handled the performance tests like a dream, it will receive low ratings in the app store if it isn’t stable. To guarantee your app’s stability, make sure to test:
- Errors – Ideally, your users would never receive an error message or the never-ending loading screen. A screen-by-screen test of the user’s entire journey of the app checks all elements and addresses any discovered issues immediately.
- Startup – If your app consistently crashes before the user can successfully open it, chances are it will be deleted and receive a negative review on the app store. A whopping 53% of users uninstall or remove apps if they crash or do not respond (Dimensional Research & HP, 2015). Make sure to test the app’s startup in simulations, ensuring that the application’s opening is smooth on different operating systems and devices.
- Resources – We’ve all been there: downloaded a new app on a full battery, then looked at our device a few hours later to notice the battery is in red. 36% of users will stop using an app due solely to heavy battery usage (Dimensional Research & HP, 2015). Optimizing your device testing matrix to include all devices in testing resource usage will save your app from deletion.
Some may still argue that mobile application testing isn’t worth the time and resources. Some organizations cut corners by simply replicating past test strategies that worked well for non-mobile applications. When contemplating the investment, consider this: failure in usability, performance, or stability can result in poor ratings, lost revenue, unhappy customers, and potential damage to your brand. In the new era of mobile, are you willing to take that risk?