EDUCBA Logo

EDUCBA

MENUMENU
  • Explore
    • EDUCBA Pro
    • PRO Bundles
    • Featured Skills
    • New & Trending
    • Fresh Entries
    • Finance
    • Data Science
    • Programming and Dev
    • Excel
    • Marketing
    • HR
    • PDP
    • VFX and Design
    • Project Management
    • Exam Prep
    • All Courses
  • Blog
  • Enterprise
  • Free Courses
  • Log in
  • Sign Up
Home Software Development Software Development Tutorials Software Testing Tutorial Types of Automation
 

Types of Automation

Priya Pedamkar
Article byPriya Pedamkar

Updated March 20, 2023

types of automation

 

 

Introduction to Types of Automation

Automation Testing is useful to test the repeated functional flow, which does not have new functional updates, with the help of the automated scripts. The Automation testing types can be chosen depending on the testing type required for the given module and the software development phase where the automation testing is to be implemented. The types of Automation testing are Functional testing, unit testing, integration testing, smoke testing, keyword-driven testing, data-driven testing and Regression testing.

Watch our Demo Courses and Videos

Valuation, Hadoop, Excel, Mobile Apps, Web Development & many more.

Top 7 Types of Automation

Software tests which are suitable for automation can be classified into the following types:

1. Smoke Testing

It is also known as build verification testing (BVT) or build acceptance testing (BAT). Smoke tests ensure that the most important and vital functions of an application run smoothly. It is the primary testing method used for finding out errors that have the potential to reject a software release. Smoke tests cover important features and functionalities, which are used to assess if the software runs properly or not. These preliminary tests are used to evaluate whether further tests are required, as well as the test worthiness of the product before its release to the testing team. It is the most cost-effective method, it runs quickly and gives quick feedback when running the test suites. Smoke testing can be done by manual testers or through an automation tool.

2. Unit Testing

This is a type of software automation testing in which individual processes or components of an application/software is individually tested. This type of testing checks and validates whether each unit of the application performs according to its design. The smallest testable part of a software application is called a unit. Automated unit tests check individual units of the source code, it separates each part of the program and individually checks whether it works as intended or not. It is considered as the first step of web app testing. Unit tests are usually automated.

3. Functional Testing

It is a type of software testing, in which all the functional requirements and specifications are tested using an input into the system and examining the output to check whether the application meets all the requirements. Functional testing involves tests carried out for checking the UI’s, APIs, client/server applications, security features, databases and overall features and functionalities of the software application, to determine if they are properly working according to all the important specifications. Functional testing can be automated through the use of automation tools; it was traditionally implemented by manual testers. However, automation tools are now used for functional testing as well, it can speed up the overall testing process.

4. Integration Testing

It is a form of software testing in which individual components of the software application are combined in a group and tested. The function of integration testing is to expose errors and check the performance of the application based on the interaction of individual units together as a single integrated unit. The purpose of this form of testing is to determine how individual units of the application perform together when integrated into a single unit. This type of testing helps in improving test coverage and complete test gaps. Integration tests find system-level faults such as faulty catch integration, database schema, etc. It can also be automated.

5. Regression Testing

It is a type of software testing which is used to determine whether a recent code for program change has adversely affected any existing features of the application or not. In this case, a partial or fully successful executed test case is then again re-executed to check for or any errors in existing functionalities of the software. This type of testing is used to ensure that recent code changes do not adversely affect the application once any new changes are done. This type of testing ensures that the code can be modified with regards to changes in requirements, new additions and features to the software can be made and errors and performance issues can easily be fixed. Regression Testing can also be done using an automated testing tool.

6. Keyword-Driven Testing

It is also known as action word driven testing. It is a type of software testing which can also be automated using an automation tool. It is a scripting method that uses data files that contain the keywords relating to the software application which is being tested. These keywords are then used to describe a set of actions that perform a specific process. Keyword-driven tests contain high and low-level keywords. A list of keywords is then identified and then they are associated with a specific function that is related to do these keywords. In this form of testing, actions such as mouse-clicking, opening the browser, keystrokes, etc. are assigned by a keyword such as a click, open browser, type text, etc.

7. Data-Driven Testing

It is a type of test execution and design strategy which can also be automated, where the test script reads the testing data (databases or files) from different sources such as ODBC sources, ADO objects, CSV files, etc., instead of using hardcoded values, every time during the test run. In data-driven testing, test scripts are created which run together with their corresponding data sets in a framework. This framework uses reusable test logic to improve test coverage and reduced maintenance. In automation environments, the test data is harvested from an already running system using custom-built automation tools. The automated tests use a set of recorded or programed sequences of user actions that cover certain portions of the application being tested.

Conclusion

It can be concluded that automation is an important aspect of testing which has the potential to reduce the drawbacks associated with manual testing while reducing costs and improving efficiency is at the same time. The right type of automation tool must be selected depending upon the type of test being done.

Recommended Articles

This is a guide to Types of Automation. Here we discuss the basic concept and types of automation which include, smoke, unit, and functional testing, respectively. You may also look at the following articles to learn more –

  1. What is Test Automation Frameworks?
  2. Selenium Testing
  3. Visual Testing
  4. Manual Testing vs Automation Testing

Primary Sidebar

Footer

Follow us!
  • EDUCBA FacebookEDUCBA TwitterEDUCBA LinkedINEDUCBA Instagram
  • EDUCBA YoutubeEDUCBA CourseraEDUCBA Udemy
APPS
EDUCBA Android AppEDUCBA iOS App
Blog
  • Blog
  • Free Tutorials
  • About us
  • Contact us
  • Log in
Courses
  • Enterprise Solutions
  • Free Courses
  • Explore Programs
  • All Courses
  • All in One Bundles
  • Sign up
Email
  • [email protected]

ISO 10004:2018 & ISO 9001:2015 Certified

© 2025 - EDUCBA. ALL RIGHTS RESERVED. THE CERTIFICATION NAMES ARE THE TRADEMARKS OF THEIR RESPECTIVE OWNERS.

EDUCBA

*Please provide your correct email id. Login details for this Free course will be emailed to you
Loading . . .
Quiz
Question:

Answer:

Quiz Result
Total QuestionsCorrect AnswersWrong AnswersPercentage

Explore 1000+ varieties of Mock tests View more

EDUCBA

*Please provide your correct email id. Login details for this Free course will be emailed to you
EDUCBA
Free Software Development Course

Web development, programming languages, Software testing & others

By continuing above step, you agree to our Terms of Use and Privacy Policy.
*Please provide your correct email id. Login details for this Free course will be emailed to you
EDUCBA

*Please provide your correct email id. Login details for this Free course will be emailed to you

EDUCBA Login

Forgot Password?

🚀 Limited Time Offer! - 🎁 ENROLL NOW