TrustRadius Insights for Selenium are summaries of user sentiment data from TrustRadius reviews and, when necessary, third party data sources.
Pros
Efficiency for Automating Tasks: Many users have found Selenium highly efficient and beneficial for automating mundane tasks, such as form-filling and data scraping. Several reviewers have mentioned that the software has saved them significant time and effort by automating repetitive tasks.
Improves Quality Assurance: Multiple users appreciate how Selenium improves Quality Assurance processes by eliminating the need for manual testing, thereby reducing errors and costs. Some reviewers believe that Selenium's automated testing capabilities enhance the accuracy and reliability of their tests.
Supports Multiple Programming Languages: The support for multiple programming languages in Selenium is frequently praised by users. Many reviewers mention that this feature allows them to work with their preferred programming language, making it easier to integrate Selenium into their existing development workflows.
I use Selenium for automating browsers so I can test the UI after development. I basically write test cases covering the UI of the application I work on (Our organization requires developers to write unit tests). With the help of Selenium, I can run automated tests that run on a headless browser and monitor the backend responses as well. Whenever an issue occurs, it takes a screenshot (code written in that way). The main use of writing such test cases is that when we integrate more changes to the application, we can run the unit tests written using Selenium to make sure no part of the application breaks! This is how Selenium saves time in integration testing.
Pros
Automating a Browser (be it headless or not).
Wait for elements to load.
Inject Custom JS to the automated browser.
Cons
Selenium is a very powerful tool but when working with Java, the code needed is too big.
It is a little slow performance wise.
Likelihood to Recommend
When you have to test the UI and how it behaves when certain actions are performed, you need something that can automate the browsers. This is where Selenium comes to the rescue. If you have to test APIs and not the frontend (UI), I would recommend going with other libraries that support HTTP Requests. Selenium is good only when you have no choice but to run the steps on a browser.
We use Selenium for running our end-to-end UI test cases on their grid. The Selenium grid addresses the biggest problem [of] managing [an] infrastructure for running tests seamlessly and in [a] very efficient way. The scope of our use case is to qualify the developer changes against the test data.
Pros
ease of infrastructure management by providing the test environment
provides varies types of platforms such as windows and linux
different types of browser availability
Cons
dynamic scalability of the infrastructure
utilisation of kubernetes for efficient resource usage
support for analytics for the previous test runs
Likelihood to Recommend
Selenium is well suited for test case automation in two ways. The first way is by providing a framework for writing the test cases, qualifying the newly developed features by the developers. The second way is by [furnishing] the Selenium grid which is the infrastructure for running the automated test cases seamlessly. It is less appropriate in cases of running JUnit, [I believe].
We used to use most aspects of Selenium (WebDriver and grid) when we had everything in-house, but we then outsourced the grid part to SauceLabs as they offered VMs and real devices. Selenium is the main "go-to" for all things front end in regards to testing. We use Selenium WebDriver to interact with our games via a desktop and mobile device browser where the main use case for us is to execute Javascript code. This is because our games hide behind a canvas object so would need hooks embedded within the games in order to interact with them. A typical use case would be to interact with HTML elements on a webpage. Executing Javascript through the webdriver is instantaneous. There is very little "travel" time for the requests and responses whereby even testing dynamic things like games is possible. It's not interacting with the games as a normal user would with tap/click events, but its the closest you're going to get without using image recognition software.
Pros
Easy interaction and manipulation of HTML elements.
Injection of Javascript code into any browser.
Easy to setup and scale Selenium Grid.
Cons
The ongoing maintenance of Selenium Grid (devices/browsers tend to go down here and there and would require a restart or fix).
Constant updates and name changes to the desired capabilities and no official documentation listing them and their constant changes.
Likelihood to Recommend
Selenium is one of the few tools on the market that allows interaction with a browser that is open-source, so it would be really hard to fault/beat it. It's actually available to use in many languages (like Java, Javascript, Python, etc.), so it does cater to many out there. The use case is simple, but powerful, "to imitate a real user interacting with a webpage". This opens up so much in regards to Front end automation and will automate many of your test cases which you would normally manually perform, in a much slower and error-prone way. In addition, you could write scripts to act as tools, if say an API isn't exposed to you. For example, you could create scripts to register an account on a website with different randomised usernames each time. So not just limited to testing. The only downside is that Selenium could hit a scenario where it becomes stuck, then it will crash and require you to debug where it went wrong. But this is more down to the logic of the scripts rather than Selenium itself. You would need to know your product well to cater to these scenarios as Selenium won't handhold you to why things crash/fail.
VU
Verified User
Professional in Quality Assurance (51-200 employees)
Selenium is a very useful tool for automating any web application. It provides the browser interface for accessing any browser ex: chrome driver. It is easy to implement with any language like Java, Python. Selenium provides many methods which are very useful for automation and also very easy to learn.
Pros
Web Automation.
Easy to implement with other languages.
Easy to use.
Cons
Unable to automate captcha using Selenium.
Can not automate windows application.
Likelihood to Recommend
Automating any web application on a web browser like Chrome, Selenium makes it very easy to automate the web application. Selenium provides many inbuilt methods to use which make users attract. It is also very easy to learn and also it can implement well with many of the other languages.
VU
Verified User
Employee in Information Technology (201-500 employees)
Selenium is used as part of our test automation suite, and really addresses the problem of quality automation in the software development lifecycle. As companies scale the number of artifacts or the number of releases required to stay agile and competitive, there is a need to test software without spending manual hours.
Pros
Recording manual test steps so they can be automated later
Run automated test suites to verify the quality of code before shipping to production
Simulating user experience navigating your website using an actual browser
Cons
Mainly used for web based applications.
No built in, top-level reporting capabilities. Reliance on third party software for this.
Programming/coding experience is needed to get the most out of the tool.
Likelihood to Recommend
If you need to test web applications, Selenium is the de-facto testing platform. Tons of community support and the fact that the software is open source means you will find a plethora of resources if you ever have a question about the product. You will need programming experience to get the most out of it, and if you are looking to test desktop or mobile applications, look elsewhere.
With Selenium, we used both UI and backend Rest services automation. Which is drastically spent on resources rather than automation tools. With Selenium, both frameworks are good and easy to approach and maintain. All test data and link the Jira user story dynamically passed through CI/CD pipeline and updated test case status directly in Jira. Which is an awesome framework built using Selenium and I recommend this to use all other projects.
Pros
Easily maintain all types of testing with tags.
Integration with CI/CD pipeline.
Parallel test preparation while story is in dev progress.
Easy to integrate with other tools such as Jenkins and team city.
Cons
Little hard to compare image testing with images.
It should have a standalone IDE for business users/nontechnical users to do the automation.
It should have record and playback feature.
It should support all kind of applications (SAP and Mainframe).
Likelihood to Recommend
1. For browser-based applications definitely Selenium is best 2. For ERP applications such as SAP unable to automate it. 3. I used all web retail applications and was very helpful and within 6 months time frame able to build UI and REST services framework and deliver critical business processes.
Selenium is a bit of a Swiss Army knife of testing when it comes to web applications. There are more emblazoned products and better automation but Selenium cannot be missed in companies. In our specific use case, Selenium is used as ad web driver for zap proxy and to test that there are no regressions in usage behaviour. Selenium is fast and good especially to build custom checks. Great integrations, great documentation, and is easy to find people with Selenium skills.
Pros
Custom web interface tests.
Easy integration, huge documentations and community.
Selenium IDE.
Cons
Hard to maintain big tests solutions.
Lacks in reporting capability (natively).
Not so easy or natural to learn but easy to find people already used it.
Likelihood to Recommend
For me, Selenium is the Swiss Army knife for tests, it is possible to use it everywhere, especially in that cases: As a web driver for software like ZAP. Any software that needs to drive web interface in some places needs to be tested with other software To validate acceptance criteria. Is possible to write selenium tests before implementation and use them to validate the user interaction Regression tests on UI. As above is also possible to check that there is no regression in the usage user experience The big concern is about the possibility to maintains Selenium solutions on a big number of microservices, in that case, other solutions can be used.
1. Automating regression test suite 2. To reduce man-hours 3. Open source 4. Multiple browsers coverage 5. Multiple language use 6. Can be integrated with multiple 3rd party tools
Pros
Open source
Huge community
Automation of web application, API's
Multiple language support
Multiple frameworks support
Cons
Performance
False positive results
Long test duration
No RCA
Likelihood to Recommend
Pros: Open-sourced and free: Multiple language support: The community: Wide plugin support: Easy installation and intuitive usage: Cross-browser support: Remote testing: Multiple testing and parallel testing execution: Cons: False-positive results: Long test duration: No root-cause analysis: Performance
VU
Verified User
Employee in Information Technology (11-50 employees)
We're using Selenium on most of our applications which are Web UI based. It's a great tool as it's open source and supports multi browsers including headless browsers. We use Selenium along with SauceLabs to run tests on cross browser/cross os systems.
Pros
For any web based UI automation, Selenium is the best tool out there to automate your tests.
It supports multiple coding languages like Java, Python, Ruby, C# etc.. to choose from.
There is a huge community of users and can get many answers on StackOverFlow.
It has lot of other plugins to make your tests even more efficient.
Cons
Mocking backend api calls can be implemented like cypress.
Visual validation on UI is a challenge using Selenium and can get better.
Automating Captchas, vidio/audio files can be improved.
Likelihood to Recommend
Scenarios where Selenium is well suited: Web UI automation Parallel execution of tests Works with 8 coding languages of your choice Can be easily integrated with CICD pipelines like Jenkins Scenarios Where Selenium is not the best fit Windows applications automation Mobile automation Visual validation
VU
Verified User
Professional in Quality Assurance (10,001+ employees)