Saturday, December 25, 2010

Selenium 2/WebDriver is coming

Selenium 2/WebDriver next alpha has been released recetnly. Although it's new kid on the market of open source web testing tools you can't argue that it's the most compelling web testing tool around at the moment.

For writing web automated tests I have been using first Selenium for over a year. And I am pretty satisfied. But there are several things those annoyed me. Above all is Selenium-RC server that has to be running befor execute your test. Actually it is a relatively slow and sometimes fickle process. Good news is that now within WebDriver this is no longer required. You just create new driver instance and it is ready to use.

So a month ago I started to refactore my tests removing Selenium 1 in favore of WebDriver. But had got the next problem. My tetst are written in python and I am using Python bindings for Selenium. A lot of the test are using the get_eval methode to execute javascript code. WebDriver has the execute_script methode to do the same and it does but within the "Unknown result type - 0" exception. Actually it means that it is not possible to return something from javascript back to selenium. Fortunatelly we were able to fix this issue. And espetial thanks to Vladimir Lavrechuk, a college of mine, for his huge contribution to solving the problem. Actually the problem was already reported to the developers and there is an issue 641. I have posted my solution there.

Now I continue to develope my tests using WebDriver and in my next posts I will try to share my experience.