All that you wanted to know about test automation, its role in the fast-changing technology space, test-driven development, the role of AI, and more answered by Indium’s test automation expert Aravindhan Ashokan, AVP & Head of Automation CoE… A QAI-Certified Tester with over 18 years of experience in IT and related areas, he was pivotal the development of various frameworks, what he doesn’t know, he knows how to unearth…
What advantage does test automation framework provide over the record and replay in regression testing?
Record & Playback has its own limitations. In this method, every test case is hardcoded, and any change requires a complete rewriting of the code. The scripts are unstable and even minor errors can disrupt automation. In most of the tools, test cases as recorded as tracks and new lines cannot be inserted, needing a complete rewrite or re-recording of the track all over. This method requires high maintenance and reusability is almost extinct.
A framework enables inserting of lines as needed. Change in one place gets reflected throughout the code; and most importantly, the reusability and maintainability make test automation framework desirable.
Does automated testing have any implications on the design and development process in any way?
In IDE (Integrated Development Environment), developers tend to use drag & drop and start coding without naming the UI controls. This can be challenging when writing the automated test scripts as performing automated actions on the controls becomes difficult. Secondly, in Agile environment, often testing drives development (TDD – Test Driven Development) as in-cycle testing is best achieved through automation.
How will AI shape the future of Test Automation?
Predictive analysis is one area where AI and machine learning are going to make a big impact. This will help in anticipating the number of defects one can expect in the next release and the modules with higher defect density. This will help identify test cases to be run based on the new functional changes and categorize the severity of the defects.
The access to data will help provide a stability index and certify the build as well as track the defects to test cases, test cases to scenarios, and scenarios to functionality/requirements. It will also help assess the distribution across modules and determine if the coverage is adequate for the current release.
What are the key skills needed to build a next-generation Test Automation Framework & Methodology?
Test engineers would need skills such as data science skills and deep learning principles to be able to build and maintain AI-based test suites apart from the existing test automation skills.
Can an existing Test Automation framework evolve to serve newer platforms, say IoT Testing, or would you rather build from scratch?
A framework should enable:
- Organizing test cases
- Configuring the test settings
- Executing the tests
- Reporting the results
The testing requirements of a new generation of devices are not very different and therefore, frameworks can be useful in their current forms. However, manual intervention, or semi-automation, will be involved where the tests will be paused when we perform a manual task on the IoT devices.
What cannot be tested using a TA framework?
Anything that requires human intelligence – usability, colour validations, image verification, captcha will need manual testing. Any technology-related feature can be tested by TA framework using scripts.
How do we adapt TA frameworks for newer devices that are very different from existing ones (say a wearable device)?
This depends on the device. Say a wearable device – only very little automation is possible to get accurate results. A firmware, on the other hand, can have a higher percentage of automation.
What are some of the characteristics of a good TA Framework?
It should be:
- tool agnostic
- platform agnostic
- enable parallel testing
- support non-UI apps such as database, API and web services
- provide multiple channels of communication
- have a readily usable library
- jumpstart automation
What kind of efficiency (with numbers) does TA bring in to a testing process?
Nearly 50-60% reduction in manual functional testing, thus freeing the human resources to pursue more meaningful tasks and add value to the testing project. It also facilitates innovation as a result.
What is the kind of value addition you think Test Automation can enable?
Prescriptive analytics is a promising area that involves business analytics (BA) dedicated to finding the best course of action for a given situation. It can help identify potential security threats or performance bottlenecks, detect trends, and help take corrective actions proactively.