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 component 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 is platform independents means it supports various operating systems like Windows, Mac, Linux, and Unix.
- It is used for cross-browser testing like Chrome, Firefox, IE, and Opera browser.
- It supports headless browser (PhantomJS, HTMLUnitdriver, Chrome headless)
- It can be integrated with an open-source unit testing framework (TestNG, JUnit – TDD, BDD Framework – Cucumber Jbehave Serenity)
- Its very lightweight, it uses fewer hardware resources as compared to other 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.
- By using selenium, we can perform functional, regression, usability, and UAT Testing.
- It Supports to test ajax functionalities and helps to monitor changes in the content without the page load.
Selenium WebDriver CONS / Disadvantage
- As its open-source, so 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 – No script less / Codeless automation.
- Using selenium webdriver, we can not automate desktop application
- No default reporting facility for test results.
- For doing extra works like test case design, report, build, CI-CD selenium does not provide any API.
- It is not supported to automate Scenario like barcode/code captcha.
If you found I have missed mentioning some pros or cons, you can mention that in the comment section.