Indium’s iMobi has been conceptualized and designed to perform Functionality and Compatibility testing with reduced test cycle time.
The mobile phone – the smart phone, in fact – has become near-ubiquitous, and is spurring the growth of apps being developed specifically for this device.
According to market research firm App Annie, the gross revenue from mobile app companies is expected to touch US $101 billion in 2020 from the US $50 billion today.
And, there is one more interesting fact here. In 2015, 85% of the revenue in the app economy came from gaming companies, which cumulatively had a gross revenue of US $34.8 billion globally.
(At Indium, we’ve a booming game testing services play, but we’ll save that post for later). Moreover, we’re not even counting the enterprise mobile apps which are built to enhance service experience, without a revenue stream attached to it.
I guess we’re stating the obvious here; nevertheless, here we go: the app economy is the new industrial revolution and it is only going to grow with mobile phone sales expected to reach 2.1 billion units annually by 2019.
Obviously, this fast adoption of mobile devices will, in turn, spur the need for mobile testing.
Several reports by Gartner & IDC suggest that by 2017, the mobile test automation market will overtake the test automation market for web products.
The mobile app development process is also continuously evolving; Open-source frameworks, Mobile DevOps, and app markets are also expected to expand the scope of mobile test automation services.
THE EFFECTIVE MOBILE APP
The mobile app, to be effective, needs to:
- be platform/OS agnostic;
- comply with interface/resolution guidelines for different devices;
- be independent, yet interdependent, of the web version;
- have just the right mix of functionalities and features keeping in mind hardware bottlenecks;
- be uncompromised on speed and yet be complete;
- most importantly, be secure
Testing of mobile apps becomes critical in this context, while also having its own unique requirements: the testing strategy should cover user expectations as well as business objectives. Broadly speaking, functionality and compatibility testing are the two crucial processes that need to be robustly tested.
THE COMMON CHALLENGES
Platform and UI / UX Guidelines:
A robust mobile test automation framework knows the different guidelines specified for the different platforms, be they Android, iOS or Windows Mobile, and enable parallel execution, thus reducing key test cycle time.
In the initial stages, mobile device emulator maybe effective to capture performance across devices and OS. But, for the sake of completeness, the mobile testing lab needs to be equipped with several hundred devices.
A context-driven testing approach is crucial for greater efficiency and effectiveness. It is important for the test cases to cover an exhaustive set of use cases, reuse these scripts, tweak them as needed – all possible through a holistic test automation framework.
Web vs Mobile App Testing:
Testing mobile apps involves testing for new dimensions as compared to web product testing; Location aware testing, call interruptions, notifications and not to forget, mobile browser differences, need to be tested.
Needless to say, screen size and hardware bottlenecks, have to be kept in mind.
APIs need to be tested to ensure that they are delivering the correct response to different calls to action. The process must include testing on different networks and signal levels.
Update / Installation Testing:
Ensure installation and updates are tested as these can throw up new issues. Memory needs during the installation, also need to be gauged and accounted for.
Personalisation & Security Testing:
Especially for apps which include a payments feature or wallet, a robust security testing process is needed. In some cases, say, gaming, personalisation is crucial.
Automation vs. Manual:
As we often repeat in iBlog, no testing process is complete without a manual test processes. However, use automation to help reduce test cycle time, allowing more time for manual testing. Ensure the test cases fed in to the automation process are mutually exclusive, collectively exhaustive.
WHY AUTOMATED TESTING
Apart from wider coverage to detect bugs and errors at all stages of development, test automation helps in:
- Reducing key test cycle time & cost
- Achieving reusability of test scripts
- Improving resource productivity
AN INTRODUCTION TO INDIUM’S IMOBI
At Indium, we developed our IP framework for mobile test automation about five years ago.
Our Mobile lab has several hundred mobile devices including of iOS, Android and Windows devices for compatibility testing.
More importantly, our experience in this field over 17 years, drove us to automate, keeping in mind the common pitfalls in the overall test process.
iMobi’s two components, namely Framework Layer and Automation Suite, are interlinked through the iMobi automation scripts, test mobile apps faster for Functionality and Compatibility.
This enables organisations to go-to-market faster for every release with the highest quality, through parallel execution across devices.
Specifically, we believe, these are the key benefits of using iMobi:
- Run across multiple devices in parallel, reducing test life cycle time
- Jump-start testing and save 2-4 weeks of time
- Needs minimal scripting knowledge
- It is test tool agnostic
- Leverages best practices
- Reporting over Email or SMS after every test
- Cloud ready, enabling QA on the cloud
- Hybrid automation framework
Overall, we’re specifically excited about our QA on the cloud and also the next generation user interface for the iMobi framework.
Of course, the development of this framework is a continuous process and over the next year or so, we’ll continue to enhance and retain our positioning as a best-in-class mobile test automation framework.