The Future of Mobile Testing

(Check out the on-demand webinar,  The Future of Testing )

Some would say that testing is not the most exciting of topics. But I would beg to differ. Testing today, almost a full decade and a half into the new millennium, has become quite an exciting topic.

The breath-taking pace of change over the last few years requires new and innovative ways of doing things, and testing is no exception. The ubiquity of mobile phones, the incorporation of agility into software development processes, the pervasiveness of cloud environments - these development have pushed quality and performance expectations to the forefront.

And testing is being seriously challenged.   

 

In the first post in our series on the Future of Testing we tackle mobile testing. With  90% of American adults owning a cell phone, and 58% owning a smartphone, we feel that mobile is one of the most important developments affecting testing.

How Mobile Has Changed Testing

How has mobile changed testing?

Mobile has opened up new markets for software, putting powerful, innovative technology in the hands of new segments of society that previously never had access to computers. The mind-boggling array of mobile applications available on iTunes and Google Play has increased usability and performance expectations, giving a whole new meaning to the word “quality.”

Today with the customers we’re working with we’re seeing 5 trends related to mobile:

  1. Use of HTML5 . HTML5, which was  specially designed to deliver rich content without the need for additional plugins, is enabling mobile app developers and organizations to provide great end-user experiences.

  2. Expansion of the definition mobility. Mobility is not just smartphones and tablets anymore. Peripherals and smart objects, such as internet connected appliances, automated homes and mesh networks, are quickly becoming the norm.

  3. Increase in quality expectations.  The PC revolution of the 80s and 90s made simple office and productivity applications available to vast portions of the population, but the software was buggy, and we learned to live with it. Bugginess has now become unacceptable as users have become intolerant of poor application quality. For example, when you download an app to your smartphone and find a bug, your immediate response is to uninstall the app and find another one.

  4. New technologies and experiences.  Location awareness, eye tracking, gestures, motion and temperature sensors are adding new technological dimensions to mobility.

  5. Social and commerce.  Mobile payments, social networking, location based services and content sales have changed the way we interact with others and the way we purchase goods and services.

Application complexity, higher user experience expectations, multi-channel integration, and external integration with peripheral devices have increased software sophistication and quality standards.

Mobility has become a key driver in the evolution of testing.

Recommendations for Mobile to overcome Testing Challenges

The following are testing recommendations for organizations developing and managing mobile applications to address the most common challenges that organizations face:

  • Test on multiple devices and platforms . Mobile testing must consider the overwhelming number of physical devices available.  Testing automation, quality assurance, security testing, and device compatibility testing should be implemented.

  • Dealing with a variety of connectivity modes.  Incorporate connectivity between the carriers’ mobile networks, the internet, and other connections to the web.

  • Rapid rollout schedule.  The explosion in the number of mobile app developers means there’s a new app being released every day. Testing should thus consider the techniques and tools that can be integrated into agile software development methodologies that enable the constant release of new application functionality.

  • Isolated application functionality testing.  Testing must also include end-to end application testing, not just testing of application functionality, because mobile software leverages various sources and services. You should also continue testing applications after they’ve been released. In addition, the arrival of new platform versions or devices often breaks existing applications that may not be tested without an end-to-end strategy.

  • Executing test scripts (Scripting).  With so many different device types, ensure software scripts cover at least the core functionality of the application to ensure it continues to work across all platforms.

  • Mobile testing tool availability.  Choose the right tools and platforms according to your user base. Analyze the most commonly used devices and determine the correct testing tools and platforms.

  • Inconsistencies with performance testing.  Consider testing on real devices and networks rather than emulators. In some cases, defects are found just after stressing the application with a specific amount of users and/or a specific test duration. Additionally some functionality can’t be tested with emulators, so consider testing on real devices and networks.

Next Steps in Testing

If the above list seems a little overwhelming, don’t worry, we’ve got more for you. In our next post we cover testing for cloud applications, and in future posts we cover testing for agile software development, testing automation, and exploratory testing.

We’d love to hear you’re experience with mobile testing. Please share your thoughts in the comment section below, or on Twitter or LinkedIn.