Selenium WebDriver PROS & CONS
The initial release of Selenium had four main components. It is referred to as SeleniumRC
- Selenium Integrated Development Environment(IDE)
- Selenium Remote Control – Selenium(RC)
- Web Driver
- Selenium Grid
Later, the Selenium(RC) and WebDriver were merged to form Selenium 2, also known as Selenium WebDriver. Selenium RC has been officially deprecated.
WebDriver PROS / Advantage:
- Selenium is open-source, so anyone can download and start using it.
- It supports multiple languages for creating and executing tests using Java, C#, .Net, Python, Pearl, Ruby, PHP, and Javascript.
- Its platform independence supports operating systems like Windows, Mac, Linux, and Unix.
- It is used for cross-browser testing like Chrome, Firefox, IE, and Opera browsers.
- It supports headless browsers (PhantomJS, HTMLUnitdriver, Chrome headless)
- It can be integrated with an open-source unit testing framework (TestNG, JUnit – TDD, BDD Framework – Cucumber Jbehave Serenity)
- It’s lightweight and uses fewer hardware resources than testing tools like UFT/QTP.
- Available in the form of API.
- Easily integrated with the CI-CD process (Jenkins)
- It can be executed on the local machine as well as on cloud / Virtual machine/servers (Example – Browserstack, source labs, AWS, Docker)
- We can customize the webdriver codebase because the source code is shared.
- It Supports Parallel test execution using the selenium grid.
- We can perform functional, regression, usability, and UAT Testing using selenium.
- It supports testing Ajax functionalities and helps monitor changes in the content without the page load.
Selenium WebDriver CONS / Disadvantages
- As it’s open-source, there is no direct support.
- It is a set of tools, for example, JDK + Eclipse + Webdriver + TestNG + Firebug + Firepath, so tool setup is more complicated than other tools like QTP/UFT, where you configure one tool.
- You need to learn to program. There is no scriptless/codeless automation.
- Using selenium webdriver, we can not automate desktop application
- There is no default reporting facility for test results.
- CI-CD selenium provides no API for extra work like test case design, report, and build.
- It is not supported to automate Scenarios like barcode/code captcha.
If you find I have missed mentioning some pros or cons, you can mention that in the comment section.