Selenium is a popular, open source, test automation framework widely used to test web applications.
Why Selenium?
- Open-Source
Selenium is a freeware and a portable tool.The tool can be freely downloaded and the support for it is freely available, as it is community-based.
- Supports multiple languages
Selenium supports a range of languages, including Java, Perl, Python, C#, Ruby, Groovy, Java Script, etc.
- Multi- Browser Support
Selenium provides support across multiple browsers, namely, Internet Explorer, Chrome, Firefox, Opera, Safari, etc. which helps in cross browser testing
- Supports different Operating Systems
Selenium can operate and support across multiple Operating Systems (OS) like Windows, Mac, Linux, UNIX, etc.
- Ease of Implementation
User friendliness of Selenium WebDriver is one of the widely acclaimed benefits of Selenium WebDriver for automation testing. The tool being open source, it allows users to script their personalized extensions which allows them to develop actions that are customized and can be manipulated once the user reaches an advanced level.
- Reusability and Integrations
Selenium automation test suites are reusable and can be tested across multiple browsers and operating systems. Selenium integrates with different third-party frameworks and add-ons to broaden the scope of testing. For example, it can be integrated with TestNG, JUnit, NUnit, MSUnit for managing test cases and generating reports.
Disadvantages of Selenium
- Needs expert resources. The resource should also be very well versed in framework architecture and language.
- Supports only web based applications and does not support windows based applications.
- Difficult to test Image based applications.
- Need outside support for report generation activity like dependence on TestNG or Jenkins.
- Does not support built in add-ins support.
- Lacks online support for the problems.
- Does not provide any built in IDE for script generation and it need other IDEs like Eclipse and Visual Studio for writing scripts.
- Does not support file upload facility.