WebDriver Playback in Selenium IDE is Here

It’s here! It’s finally here! I have finally committed the code for the WebDriver playback feature in Selenium IDE. If you have not seen the video of the demo during Selenium Conference 2012, you can watch it here. Someone pointed out that it has become the most popular video from the conference :D .

I will try to do the official Selenium IDE 2.0 release in a week or two, once I figure out the new CI infrastructure. For those who cannot wait till then, it is available for a short time from my GitHub repository.

For a long time, even I believed that webdriver integration in Selenium IDE could not be done. I may post how it came to be some time in the future. Do not forget that this is still a highly experimental feature and proceed with utmost care. Backup all your important stuff, anything may happen. Backing up your important stuff is always a useful step under any circumstances :) . Let us know how it goes and we will try to fix any issues that you may face. Don’t forget to tell us if it works for you as well. We always appreciate feedback, especially now, as we are discussing the phasing out of Selenium IDE.

Ready your environment

Once you have the new version of Selenium IDE, there is still some work to be done before you can use it. I will try to simplify and automate whatever I can in the future. I have a separate post for each of the following three steps to get your environment set up correctly.

  1. Install Java
  2. Get the Standalone Selenium Server
  3. Get the Internet Explorer Driver Server

Start the Selenium Server

Once you change to the folder where you have downloaded and extracted the Selenium Server, you can start the Selenium Server with the following command line on Windows.

java -jar selenium-server-standalone-2.28.0.jar -Dwebdriver.ie.driver=.\IEDriverServer32.exe

For Linux and Max OS, you can skip the Internet Explorer Driver portion and simply start the Selenium Server with the following command line.

java -jar selenium-server-standalone-2.28.0.jar

Potential Problems starting Selenium Server

Based on your system settings, you may have to deal with a Firewall prompt and may have to set the Zoom level.

Set the WebDriver Playback Settings in Selenium IDE

By default, WebDriver playback is turned off so recording and playback will work as before. To experiment with the WebDriver playback, you need to explicitly turn it on through the WebDriver tab of the Options dialog. To turn on WebDriver playback, check the option Enable WebDriver Playback.

Then set the Browser to the one you want to use. The choices are android, chrome, firefox, htmlunit, internet explorer, iPhone, iPad and opera.

Finally restart the Selenium IDE. A restart is required to enable or disable WebDriver Playback. Changing the browser does not require a restart.

So how does it work?

Every command that is executed, is caught and sent to the Selenium Server and executed using WebDriver instead of being executed locally and the response from WebDriver is used as the result. For most commands, the Selenium Emulation layer inside the Selenium Server is used. The newly introduced SendKeys command is not emulated, but is directly executed using the WebDriver JSON wire protocol. For most users, it really should not matter how the whole thing works, except that it works. Keep in mind that there are some commands and some arguments that are yet to be supported.

Limitations

This is merely the first step in providing full WebDriver playback. Bugs and limitations are to be expected. I am aware of the following limitations:-

  • Multiple browser windows will be opened and will remain open.
  • Test may not pause or exit on errors.
  • An alert message may pop up for conditions that I have not encountered in my testing.
  • Executing a single command is not yet supported.
  • Highlighting a locator using the Find button may not work.
  • The timeout settings are ignored.
  • Screenshots may not work.
  • User extensions and plugins may not work.

As you probably know by now, I do not use Selenium IDE myself, so I can only test it a tiny bit. Your help in reporting any issues is always most appreciated.

Planned improvements

I am planning to finish the following improvements in the future.

  • Support for screenshots.
  • Individual execution of commands.
  • Use timeouts as specified in options.
  • Automatic download and starting of Selenium Server and Internet Explorer Driver.
  • Highlighting elements.
  • A option to close the browser windows or leave it open

When that actually happens will depend on the feedback I get from you all and the time I am able to spare to work on it.

Follow samitbadle on Twitter

DeliciousDiggStumbleUponRedditShare
Posted in Selenium IDE | Tagged , , , , , , , , | Leave a comment

Getting Ready for WebDriver Playback in Selenium IDE – Part 3 – Internet Explorer Driver Server

WebDriver playback in Selenium IDE requires the Standalone Selenium Server. The Standalone Selenium Server in turn requires a few supporting pieces of software. I have decided to break the whole process into individual parts to make it easier on the … Continue reading

Posted in Selenium IDE | Tagged , , , , , , , , , , , | Leave a comment

Getting Ready for WebDriver Playback in Selenium IDE – Part 2 – Standalone Selenium Server

WebDriver playback in Selenium IDE requires the Standalone Selenium Server. The Standalone Selenium Server in turn requires a few supporting pieces of software. I have decided to break the whole process into individual parts to make it easier on the … Continue reading

Posted in Selenium IDE | Tagged , , , , , , , , , | Leave a comment

Getting Ready for WebDriver Playback in Selenium IDE – Part 1 – Java

WebDriver playback in Selenium IDE requires the Standalone Selenium Server. The Standalone Selenium Server in turn requires a few supporting pieces of software. I have decided to break the whole process into individual parts to make it easier on the … Continue reading

Posted in Selenium IDE | Tagged , , , , , , , , | Leave a comment

The First Amsterdam Selenium Meetup

The very first Amsterdam Selenium Meetup was held on the 10th October 2012 at the Google office in Amsterdam, The Netherlands. With more than 50 great attendees, awesome talks and a super venue. It turned out to be an amazing … Continue reading

Posted in Amsterdam Selenium Meetup | Tagged , , , , | Leave a comment

Selenium IDE WebDriver Formatters Updated to Support TextPresent Commands

Wow! Time flies! It has been over a year that I added the WebDriver exporters for the four officially supported languages to Selenium IDE. You must have read my post about it. Today I finally updated the WebDriver formatters to … Continue reading

Posted in Selenium IDE | Tagged , , , , , , , , , | Leave a comment

Stored Variables Plugin v1.21 for Selenium IDE Released

Another major update to my Stored Variables Viewer plugin for Selenium IDE. Firstly, it is no longer called “Viewer”. Yes! it has finally become more than just a mere viewer. In this release, I have added the ability to remove … Continue reading

Posted in Selenium IDE Plug-ins | Tagged , , , , , , , , | Leave a comment

Selenium Expert Plugin v0.22 for Selenium IDE Released

When I added a new Selenese command sendKeys in Selenium IDE v1.9.0, I mentioned that I will add the support to convert typeKeys command to sendKeys. This version of Selenium Expert has that feature. I have added a new Inspection … Continue reading

Posted in Selenium IDE Plug-ins | Tagged , , , , , , , , | Leave a comment

Page Coverage v1.12 for Selenium IDE Now Available

Since a lot of you have been asking for this feature, this version allows you to change the reports location. You can grab it right now from the addons page. Click on the small arrow next to the Page Coverage icon … Continue reading

Posted in Selenium IDE Plug-ins | Tagged , , , , , , , , , , , | Leave a comment

Screenshot on Fail v1.11 for Selenium IDE Now Available

Since a lot of you have been asking for this feature, this version allows you to change the reports location. You can grab it right now from the addons page. Click on the small arrow next to the Screenshot on Fail … Continue reading

Posted in Selenium IDE Plug-ins | Tagged , , , , , , , , , , , , | Leave a comment