What is Automation testing?why how where advantage disadvantage and tools in automation testing

Share

Automation Testing

 

What Is Automation?

In general, automation is a process through which we enable a machine to do human task like a human can do. Automation is required where repetition of work is task is more. By use of automation one can get reduction in cost, save time and efforts.

What Is Software Automation Testing?

Manual testing is done by a human sitting in front of a system actively executing the test steps.

Automation Testing is technique of testing in which we enable a software to perform all manual test cases without human intervention.

Automation testing is a testing where the tester writes scripts by own and uses suitable software to test the software. In other word, Automation testing uses automation tools to write and execute test cases, no manual participation is required while executing an automated test suite.

Basically, automation testing is an automation process of a manual process.

 

Why to use Automation?

  • Efforts done manually cannot be saved.

  • To achieve project deadlines.

  • To achieve cross platform and browser testing with less efforts and time.

  • To save time and cost.

  • Ease to access of information about tests or testing.

  • To achieve testing of multi lingual sites.

  • More reliable then manual testing.

 

Where to Use Automation?

  • Where there is repetition of Human Efforts.

  • In testing world automation is required in Sanity and Regression testing.

  • The frequency of sanity is more than the regression hence sanity should get more priority of automation.

  • Where test cases are highly risky – Business Critical test cases.

  • Test Cases that are very tedious or difficult to perform manually

  • Test Cases which are time consuming

 

How to do Automation Testing?

  • Automation testing is being done by some special kind of software called as “Automation Testing Tools”.

  • These tools provide us the facility to perform all the manual steps which a manual tester performs on the Application under Test, Get the Expected Result and Comparison of Expected vs Actual.

  • These tools also provide us the ability make the status of a test case as passed or failed.

 

Advantage of Automation Testing

  • Fast: – Automation runs test cases 70% faster than the manual testing.

  • Less Investment of Human Resources: –Test cases are executed by using automation tool so less testers are required in automation testing.

  • More Reliable: – Automation tests perform precisely same operations each time they are run.

  • Programmable: – Testers can program sophisticated tests to bring out hidden information.

  • Reuse: – Test scripts are re-usable.

Disadvantage of Automation Testing

  • ROI (Return on Investment) comes very late.

  • More Skilled Testers are Required.

  • More Maintenance is involved

Basic Fundamental of Functional Automation Testing

  • All UI Elements in automation world called as “Objects”.

  • All automation tools work on the fundamental of identification of objects provided by the developers at the time of development.

  • Implementation of identification method may vary from tool to tool but fundamental will be same.

How to choose an Automation tool?

Selecting the right tool is one of biggest challenges to be tackled before going for automation.

  • Identify the requirements.

  • Explore various tools and its capabilities.

  • Set the expectation from the tool.

  • Finally, go for a Proof of Concept.

 Following condition will help you select the best tool for your requirement

  • Environment Support

  • Ease of use

  • Testing of Database

  • Ability to recognize objects in any environment

  • Extensive test reports and results

  • Minimize training cost of selected tools

  • Object identification

  • Image Testing

  • Error Recovery Testing

  • Support for various types of test – including functional, test management, mobile, etc…

  • Support for multiple testing frameworks

  • Easy to debug the automation software scripts

  • Object Mapping

  • Scripting Language Used

Automation Tools available in the market

 

Sr.No

Desktop Based Application’s tools

Web Based Application’s Tools

Mobile Based Application’s Tools

1.

Quick Test Professional

Quick Test Professional

Appium

2.

Silk Test

Selenium

Robotium (Android)

3.

Test Complete

SAHI

UI Automation(iOS)

4.

Rational Robot

Test Complete

5.

Coded UI

Coded UI (IE only)

 

Top 5 Automation Testing Tool

  1. Selenium

  2. QTP (HP UFT)

  3. Rational Function Tester

  4. WATIR

  5. SilkTest

 

Selenium

Selenium is an open source automated testing suite for web applications across different browsers and platforms.

Selenium is not just a single tool but a collection of software’s, each tool is user to different testing needs of an organization. It has four components.

  • Selenium Integrated Development Environment (IDE)

  • Selenium Remote Control (RC)

  • WebDriver

  • Selenium Grid

Selenium IDE provides playback and recording facility for regression testing. It Supports only Mozilla Firebox web browser.

  • Selenium provides the facility to export recorded script in other languages like Java, Ruby, RSpec, Python, C#, Junit and TestNG

  • Selenium can execute several tests at a time

  • Selenium is used for Walkthrough tests

  • Identifies the element using Identifier, Id, Name, Link, DOM, XPath, CSS, UI-element

  • Store tests as Ruby Script, HTML, and any other format

  • Selenium provides an option to assert the title for every page

  • It supports selenium user-extensions.js file

  • It allows to insert comments in the middle of the script for better understanding and debugging

Download Selenium

 

QTP (HP UFT)

Make automated testing more efficient and help developers and testers collaborate. This functional automated testing software—formerly Quick Test Professional (QTP)—helps deliver quality software at the speed your business needs.

  • It is widely used for functional and regression testing, it addresses every major software application and environment.

  • To simplify test creation and maintenance, it uses the concept of keyword driven testing.

  • It allows the tester to build test cases directly from the application.

  • It is easier to use for non-technical person to adapt to and create working test cases

  • It fix defects faster by thoroughly documenting and replicating defects for developer.

  • QTP supports .NET development environment

  • It has better object identification mechanism

  • It can enhance existing QTP scripts without “Application Under Test” being available, by using the ActiveScreen

  • Collapse test creation and test documentation at a single site

  • Parameterization is easy than WinRunner.

Download HP QTP

 

Rational Functional Tester

Rational Functional Tester is an automated functional and regression testing solution for QA teams concerned with the quality of their Java™, Web-based, Microsoft® Visual Studio .NET®, terminal-based, SAP, Siebel, and Web 2.0 applications.

The main features of this tool are

  • It is an Object-Oriented automated functional testing tool that is capable of performing automated functional, regression, data-driven testing and GUI testing.

  • It supports a wide range of protocols and applications like Java, HTML, NET, Windows, SAP, Visual basic, etc.

  • Eclipse Java Developer Toolkit editor facilitates the team to code test scripts in Java with Eclipse

  • It supports custom controls through proxy SDK (Java/.Net)

  • It supports version control to enable parallel development of test scripts and concurrent usage by geographically distributed team

  • It can record and replay the actions on demand

  • It integrates well with source control management tools such as Rational Clear Case and Rational Team Concert integration

  • It allows developers to create keyword associated script so that it can be re-use

Download Rational Functional Tester

 

WATIR

WATIR is an open source testing software used for regression testing. Tests written in this are easy to read and maintain. WATIR support only internet explorer  while WATIR web driver supports Chrome, Firefox, IE, Opera, etc.

  • WATIR works on multiple browsers on different platforms.

  • Rather than using proprietary vendor script it uses a full featured modern scripting language Ruby

  • It supports your web app regardless of what it is developed in

Download Watir

 

Silk Test

Silk test is just like C++ object oriented language. It is designed for functional and regression testing. Concept of Classes, Object and Inheritance are used in this.

Main Features of Silk Test are.

  • Silk Test contains all the source script files.

  • Silk Test converts the script commands into GUI commands.

  • Silk Test execute for identify the movement of mouse along with keystrokes.

  • Silk Test can perform both playback and record method or descriptive programming methods to get the dialogs.

  • Silk Test can identify all controls and windows of the application under test as objects and determine all of the attributes and properties of each window

  • Efficiently verify functionality across browsers with a single, portable test script

  • Increase speed of testing in DevOps environments with embedded quality automation

  • Leverage the cloud to cost effectively test an unlimited number of user configurations

  • Centralize test automation for desktop, web, mobile, and enterprise applications

  • Improve software quality without disrupting development tools and processes

Download SilkTest

Conclusion:

Automation testing is a best way to fulfill most of the testing goals with effective resources and time. Selecting the right tool that fulfills the requirement of the application can be a tricky task, because not any tool capable for fulfill 100% requirement.

 

“Related post”

Software Development life cycle

Software Testing Life Cycle

Test Case Documentation

Alpha and Beta Testing

Regression Testing

Smoke and Sanity Testing

Software Testing

Validation and Verification

V-Model

Entry and Exit Criteria in software testing

Integration Testing 

Automation Testing

Advantages and Disadvantages of Automation Testing 

 

 

 

 

 

3 Comments

Leave a Reply

Your email address will not be published. Required fields are marked *