Selenium: An Industry Go To
January 18, 2016

Selenium: An Industry Go To

Christian Crews | TrustRadius Reviewer
Score 7 out of 10
Vetted Review
Verified User

Overall Satisfaction with Selenium

Selenium was being used by the QA department to develop frontend UI automation for our sites. It aided in addressing the problem of of frequent manual regression test runs. By automating some of our stable UI, we were able to reduce the checking cycle time greatly. With that, we were able to increase our release frequency.
  • It is open source i.e. free. It's been around for a while so there are many online support mechanisms such as user groups/forums.
  • It's fairly easy to learn and implement basic UI automation rapidly.
  • Selenium Grid allows for parallelism which is great in reducing automation run time.
  • Works across various operating systems and programming languages.
  • Not all of the web drivers are fully owned/supported, thus unstable (mostly talking about the IE driver).
  • Can't be used for all types of testing such as load/performance and/or API checking.
  • Loading the web drivers takes some time and actually slows down automation.
  • Cannot perform other tasks while automation is running for fear of interrupting the automation.
  • + Faster release cycles due to converting some manual checking over to automated checking.
  • - Flaky automation due to some unstable drivers.
  • + Increased confidence that changes are good across various browsers.
  • - Increased ramp up time for new QA staff if they are not experienced with Selenium automation.
  • - May require additional hardware/VMs because you cannot perform other tasks while automation is running.
  • PhantomJS and CasperJS
PhantomJS
Pros:
  • Is headless so doesn't load a web driver onto the screen, it's considerably faster than Selenium web drivers.
  • Has a built in screen shot function for free. Great for catching the state of an app on failure.
  • Lighter weight.
Cons:
  • Best used with JS (that could be a pro or con depending on language preference).
  • No cool structuring system like Selenium's page object model.
  • Seems to be less online documentation and support.
  • Harder to find candidates with experience.
For UI automation, I would more than likely look to selenium first. For other types of automation, I'd go with other automation libraries. Also, many teams jump to UI automation as a first resort. I would actually challenge them not to do that. Rather, I would suggest that they implement some lower level API automation as a first resort.