Manage Android Fragmentation Using an Effective Test Automation Tool
Android application developers have to take care of app compatibility with multiple devices and operating system versions. Device manufacturers too have to test a new device in its entirety against the version of Android that they want to support. The current fragmentation of devices and operating system versions adds significantly to the cost and time-to-market for app developers and device manufacturers.
While Android provides over 15,000 pre-defined test cases to test a new app being written or the operating system being ported onto a new device, many of these test cases need modifications during development. Moreover, a developer usually needs to add a significant number of new test cases to this list. Integrated frameworks that can consolidate all the pre-defined and custom-written test cases into an automation suite can be of immense benefit to app developers and device manufacturers.
A robust test automation system can enable software developers, testers and project managers to manage the increasingly complex testing workflow. While evaluating a test automation system for a mobile platform, the following aspects need to be considered:
- Ability to add existing or newly defined custom test cases to the test suite in addition to the ones provided by the platform.
- Remote test execution. To be able to truly make an impact to development timelines, the framework should be equipped to work over a network (like corporate wifi) and test multiple devices in a test lab. Considering the proliferation of devices, this would enable development and testing teams to execute test cases across multiple devices from a single host.
- For large projects, the tool should fit well with existing team structures, allowing users to create user profiles with different access rights, such as administrator, tester, test lead, developer and others. Test runners should be able to assign test case clusters based on user roles and monitor them remotely, enabling managers and test leads of a large team to centrally assign and monitor testing activity.
- Ability to assert the final results against control data and entries made in a central database, allowing deviations to be recorded and reported.
- Ability to group test cases by app requirements, enabling monitoring of app progress and stability at a requirement level over a period of time.
- Ability to support reporting for quality controller, test engineer, test manager, project manager and management. The tool should be able to support standard report formats such as html, pdf, csv, png and xls.
- The framework should be modular, enabling clean separation between platform-dependent modules such as actual device debugging (e.g. Android Debug Bridge) and independent modules such as reporting and GUI.
- Lastly, the framework should have the ability to integrate with popular bug management tools adding value to the entire testing process.
Persistent Systems has developed a test automation framework for Android that enables developers, testers and project managers to manage their test suites and test plans. To learn more, visit PTAF-framework