Following is part one of a two-part series on mobile app testing in the enterprise. Last updated July 29, 2016.
It’s an Increasingly Mobile World
Mobile devices are found in every type of business, organization, industry and country. Having permeated every corner of the globe, smartphones and media tablets know no boundaries.
For businesses, governments and other organizations, mobility enables, extends, automates and streamlines the flow of data, content, transactions, communication and productivity.
At the same time, mobility’s ubiquity is causing a sea change within IT, because deploying, managing and supporting enterprise mobility is incredibly complex, dynamic and challenging.
At the heart of this complexity and fluidity are applications.
IT is responsible for identifying, designing, developing, testing, deploying and then managing an enterprise’s growing portfolio of mobile apps created for an increasingly demanding user community.
What are the implications of the sea change?
Mobile app development and mobile app testing are quickly emerging as the top priority pair for IT.
Mobile apps are difficult to write, given heightened user expectations. When these expectations are combined with the chaotic universe of new devices, new ideas and constantly-changing software platforms, it becomes apparent that mobile app testing presents an order of difficulty never before seen by IT.
If an enterprise mobility strategy is to avoid being swamped by the floodwaters of change, mobile app testing must become a prime concern.
Factors Increasing the Complexity of Mobile App Testing
The growing complexity of mobile app testing is caused by many factors:
- An endless variety of device types, form factors and operating systems
- Compressed release cycles of mobile apps, operating systems and devices
- The growing sophistication of mobile app users, which increases demand for sophisticated apps
- The desire of mobile app users to perform ever more complex tasks using ever more intuitive and simple user interfaces
During the PC-dominant era, nearly all desktops and laptops ran Microsoft’s Windows operating system.
Windows’ critical mass presented developers and test engineers a homogeneous environment that changed more slowly and presented less diversity than mobile.
An average of 3 to 5 years between major releases afforded developers and testers much more time to field new app versions.
For example, Windows Vista (January 2007) was released more than five years after Windows XP (October 2001); Apple’s iOS 6 (September 2012), however, was released just 11 months after iOS 5 hit the streets in October 2011.
Mobility teams face at least 3 major mobile operating systems that are contending for dominance—Android™, iOS and Windows Phone.
Moreover, the Android operating system allows hardware manufacturers to customize the OS to their models, making it more important than ever to thoroughly test app function to ensure it has not been compromised.
Because mobility workers and most enterprises have embraced bring your own device (BYOD), a key success factor for mobility apps is whether they are accepted by users of all supported platforms. IT also must contend with the growing number of tablets, which may use the same operating systems, but often have much larger form factors, introducing yet another layer of complexity to mobile app development and testing.
The Impact of BYOD on IT
Before mobility, IT had a hand in what versions of operating systems and what kinds of hardware were in the enterprise’s portfolio.
With mobility, however, the hardware base is made fluid by BYOD; what’s worse is that, without IT’s knowledge or consent, manufacturers apply a nearly continuous stream of bug fixes, patches, and minor releases.
Each time an OS in the user base is upgraded or patched, proper functioning of enterprise apps is put at risk. This risk compresses the mobility development lifecycle—new OS features can cause app bugs and users want apps to support the latest and greatest.
Given Murphy’s Law, any change to the OS, no matter how small, demands re-testing of the app.
The rapid patch rate forces frequent re-testing between releases, which IT could avoid in the past by controlling the platform, but is powerless to avoid today. The only possible strategy is to do more regression testing faster.
As a result, there is enormous pressure on IT’s QA and testing teams, especially given the shortage of mobile app developers and testers.
The growing sophistication of mobile apps also impacts mobile app testing.
Successful enterprise mobile apps ensure the user experience is mobile-centric, relying mostly on touch, swipe, and the mobile user interface.
Users have high expectations for the mobile experience, driven by their experience as consumers. The expectation is that apps not only work, but are intuitive, convenient and easy to use. Mobile app users have zero tolerance for poorly-performing, hard-to-use apps.
Such higher-order apps help businesses increase employee productivity, improve satisfaction levels of employees and customers, and, most important, compete. Sophisticated apps require sophisticated, app-centric and user-centric testing.
Not only does more code need to be tested, but new usability scenarios must be confronted and successfully managed during testing.
Coupled with a highly-compressed app lifecycle, the demands placed on the testing and QA teams by increased app functionality are obvious.
More code means more to test, and the reduced lifecycle means additional testing has to be done much faster than for yesterday’s less-sophisticated apps.
What if Mobile Application Testing isn’t a Priority?
Higher-order mobility apps are not only complex to build and test, they demand that testing be rapid, thorough and ongoing. If enterprises fail to realize testing’s criticality and do not act on it, they risk:
- Low adoption rates of the app with low user satisfaction and decreased competitiveness
- Loss of revenue
- Wasted development and QA dollars
- Increased time and money spent troubleshooting apps and supporting users
- Elongated lifecycles
- Decreased productivity of mobility workers
- Loss of reputation and credibility for the business and for IT within the business
These risks are real and make the demand for quality and the need to thoroughly test all the more important.
The trick is to meet the demand to deliver apps quickly while still meeting the need to test them thoroughly. Test automation yields the velocity needed to avoid compromising either objective.
Don’t forget to download our eBook on Amazon, to stay ahead of the curve in 2017!