Automation Testing Interview Questions and Answers
Tests conducted by testers manually is called Manual Testing, wherein they compare the expected and actual functionality are in accordance with the test cases.
Tests conducted by using software tool is called Automation Testing, wherein the expected results are fed into the tool to be compared with the actual output of software being tested.
Following are the prerequisites for starting automation testing:
List of repeated functionality
List of Test Data
Tool Selection – List down the automation tools compatible, depending on whether the application is Desktop / Web based, language used for software development etc
Scope of Automation – List down the scenarios and functionality which are repetitive and automatable
Planning – Design a framework, Schedule the scripting and execution of the same
iDevelopment – Scripting the scenarios to be tested with inputs(Test Data) and expected output
Execution – Running/Executing the scripts and reporting the results
vMaintenance – Update the scripts in accordance to the latest changes with the software under test
Unit tests, GUI tests and Functional tests
Unit tests – Done at development phase which helps reduce the bugs.
GUI tests – Done at testing level, which focuses its scripts to test user interface of application under test.
Functional tests – Done at testing level, which simulates the functional scenarios to test the application with provided input and expected results.
NOTE : Other automation test include Webservice testing.
Reduced test execution time
Can be executed in cross platforms test cases (different OS, browsers, environment, etc)
Simplifies complex functional tests
Automating repetitive tasks
Continuous script maintenance/updation is necessary
Basic programming knowledge is a must for better automation test
Skilled resources required for scripting
Tool selection should be done considering -
Platform to be tested - like supported OS, scripting languages supported by tool and testing
Support for object identification
Following cases should be automated :
Most repeated scenarios
Tests with multiple data sets
Following are the criteria considered to prove maximum usage of automation testing :
Number of test cases to defect detected ratio
Execution time and time required to release the product
Reduction in manual interference
Complexity of Maintenance
HP UFT(Formerly QTP)
IBM Rational Functional Tester
Automation is any action which can reduce human efforts.
The right candidates for automation are:
Regression test suite
Smoke / Sanity test suite
Test data creation
Automating behind the GUI like testing of APIs and methods
100% automation would be difficult to achieve because there would be many edge test cases and some cases which are executed seldom.:
Automating these cases which are not executed that often will not add value to the automated suite.
First identify which type of testing / test cases you want to automate
Identify the tool
Design the framework
Create the utility files and environment files
Identify and work on the reporting
Allocating time for enhancing and maintaining the scripts.
Selecting the automation tool depends upon various factors like:
Scope of the application which we want to automate
Management overhead like cost and budget
Time to learn and implement the tool
Type of support available for the tool.
Limitation of the tool