AutomationNG is a cloud and mobile -first test automation framework for acceptance testing and acceptance test-driven development (ATDD). It provides a unified mechanism to script for Web, Mobile Web, iOS and Android Native applications. AutomationNG has a modular architecture and the framework provides a rich set of often needed generic fixtures. Its testing capabilities can be easily extended by writing custom reusable fixtures. It provides fixtures to capture screenshots of the desktop and the mobile screen which is configurable to be invoked only during failures.
Test data is defined using multiple file formats like XML, Excel spreadsheet, CSV etc. or any database. When test execution is started, the framework first parses the test data. It then utilizes the fixtures provided by the framework to interact with the system under test. Fixtures can communicate with the system either directly or using other drivers. It is operating system and application independent. It enables tests/scripts to be run “on device”, not just on Simulators.
It also integrates into the existing processes to allow continuous delivery and combines with commonly used tools such as GIT, SVN, JIRA, Jenkins, etc. It has a strong Core library (Fixtures Utility, Functions, etc.) that allows and promotes reuse and scalability. It also enables concurrent (“parallel”) execution on web browsers (both PC & Mobile) and native apps on iOS and Android (both Phones & Tablets). Ensures separation of Systems Under Test (SUT), Tests, and Infrastructure (ability to run VMs or leverage cloud or IaaS providers). Allows creation of reusable scenarios that can be used across multiple test case and test suites, reducing effort for maintenance and providing great ROI.
Some of the key features of AutomationNG are:
- Hybrid framework with support for DDT and BDDT providing excellent test control with Rest API support.
- Write single automation script that executes on all the platforms - Desktop, IOS and Android phones.
- Supports parallel execution on both Desktop and Mobile devices.
- Rich Library of highly Reusable Fixtures along with i18n support with language packs.
- Run the automation tests on real mobile devices, not only simulators.
- Instruction level logging, Exception Handling & Error Management.
- Seamless Integration with CI tools like Jenkins.
- Custom, mature platform allows tests to be defined in "English-like" statements.
- Define test cases once – for manual and automated runs; no need to do things twice.
- Integrates with open-source tools, thereby lowering investment costs.
- Direct integration with version control, collaboration, and defect management tools.
- Supports multiple web browsers.
- Management console for easy maintenance of automted tests.
- Agile conversion methodology (to convert manual test cases to automated), which provides immediate ROI with the completion of each Iteration.
- More advanced than many commercially available automation products.
The following images / pictures provides real-world examples of AutomationNG being used in testing cloud and mobile products.