Automation Testing is a software testing technique that performs using special automated testing software tools to execute a test case suite.
Which Test Cases to Automate? :
- Test cases that are repeatedly executed.
- Business Critical test cases.
- Test Cases which are time-consuming
- Test Cases that are very tedious.
- Test Cases for which the requirements are mostly fixed.
Benefits of Automation Testing: :
- It has the capability to run massive amounts of test cases at a time.
- It increases the speed and efficiency of the software testing process.
- It avoids human intervention while executing test scripts.
- It is faster than manual testing, which saves a lot of time for testers and the organization as a whole.
- It offers improved accuracy.
Automation Testing Tools :
There are many automation testing tools are available. Some top of them are as follows:
- Katalon Studio - Selenium - Appium - TestComplete - Cypress - Ranorex Studio - Perfecto - LambdaTest
Selenium offers a collection of tools for browser automation. It comprises of 4 Selenium components, each serving a different purpose for web testers.
1. Selenium IDE(Integrated Development Environment)
2. Selenium RC(Remote Control)
3. Selenium WebDriver
4. Selenium Grid
Advantages of Selenium :
Selenium is open-source, so anyone can download and start using it.
It is platform independents means it supports various operating systems like Windows, Mac, Linux, and Unix.
It supports headless browser (HTMLUnitdriver, Chrome headless)
Easily integrated with the CI-CD process (Jenkins)
It can be integrated with an open-source unit testing framework (TestNG, JUnit – TDD, BDD Framework – Cucumber)
Limitations / Disadvantages of Selenium :
Using selenium webdriver, we can not automate desktop application.
Selenium does not have any inbuilt reporting capability; you have to rely on plug-ins like JUnit and TestNG for test reports.
It is not supported to automate Scenario like barcode/code captcha.
Selenium requires high skill sets in order to automate tests more effectively.
Selenium does not provide any test tool integration for Test Management.
In this Automation Testing Tutorial, we use Selenium WebDriver with Java for testing Web Applications .
Selenium WebDriver Commands :
Selenium WebDriver has different set of commands for different operations. The commands provided by Selenium WebDriver can be broadly classified in following categories: