info@brightest.be
+32 3 450 88 42

Automation Thursday

Brightest > The return of Selenium IDE

The return of Selenium IDE

Posted by: Koen
Category: Test automation

In the test automation world Selenium is one of the more popular solutions, definitely when it comes to functional automation for web applications.  The Selenium WebDriver library is part of the Selenium Project, which also contains a Selenium Grid and a Selenium IDE.  Selenium Grid allows you to run tests on multiple servers at the same time, cutting down on the time it takes to test multiple browsers or operating systems.  Selenium IDE (Integrated Development Environment) is the simplest tool in the Selenium Suite, it is (or better: was) a Firefox add-on that creates tests very quickly by use of a record-and-playback functionality, similar to the one of HP UFT.  The Selenium IDE should not be used as a solution for developing and maintaining complex test suites, but the main benefit lies in the fact that you can record and playback automated scripts without any programming skills.

With the release of Firefox 55, somewhere in the summer of 2017, the Selenium IDE was no longer working as a Firefox add-on.  In a way to make the Firefox browser faster and more stable, they switched extensions to the widely adopted “Web Extension” mechanism.  Since Selenium IDE was an open-source solution, there wasn’t anybody who had the time to improve the IDE and adopt it to the Firefox changes.  This resulted in a broken and no longer supported Selenium IDE.  For some this came as a shock, for others this was a relief.  Luckily, Applitools came to the rescue and created a new Selenium IDE for the community.  This new Selenium IDE is similar to the old one, but it contains better locators and better support for common tasks.  Also, whereas the old version only supported Firefox, Applitools created a new version which is usable against any browser that supports web extensions (meaning Firefox and Chrome).

When opening the new IDE you will recognize the UI of the old version, but many improvements are included.  One of the main improvements is the selector accuracy.  In the old Selenium IDE your tests ended up with brittle locators, which caused the majority of your recorded tests to fail and hard to maintain.  The new IDE does not only record the selector for you, it also generates other locator options, which mean you can quickly change the recorded locator to a more desirable locator.  Another brand new change is the possibility to run your recorded tests from the command line, which gives you some cool features like passing browser capabilities, filtering tests, run tests on remote servers and even run tests in parallel.  This command line runner also gives you the possibility to integrate your recorded Selenium tests in CI/CD systems.  One of the upcoming new features is the possibility to export your recorded tests to a specific Selenium language (like Java or C#).

This all looks nice, but is this still useful?  In the past the Selenium IDE was mostly used for learning Selenium.  Due to the brittle tests and the lack of interesting features, people quickly turned their back on the IDE and started creating tests by writing code directly, using the Selenium WebDriver library instead. There are some situations where I think this new IDE can become very useful: if you don’t have technical knowledge, if you’re looking for a quick way to automate boring and repetitive tasks or when you just started using Selenium, then the new and improved Selenium IDE might be a good solution for you and your team.

And, if you’re not convinced, have a look at the demo and if you want to get started right away, you can watch the webinar (link or below this post) from Simon Stewart, the creator of Selenium WebDriver or watch some getting started videos (Selenium IDE getting started part1 and part2 by Joe Colantonio).

 

More documentation on Selenium IDE can be found on the Selenium website.