Selenium proves Opera is the slowest browser on Earth!

barbie on 2007-07-05T11:07:54

After several attempts and much help, I was almost prepared to forget running Selenium on Linux. However, I've been commissioned to present my 'Selenium - An Introduction To Web Testing' talk at LUGRadio Live 2007, which is this weekend. I'm not doing the talk until Sunday, although I also have a Perl Mongers BOF on Saturday, so I could have potentially tried to see if anyone at the conference could help, but thankfully I no longer need to.

Despite the OpenQA website claiming that Selenium works with Firefox, Opera and Konqueror on Linux, I couldn't get any of them to work. It was only searching through Google using strings from the error outputs, that I discovered a thread on the OpenQA site, that hinted that (a) Selenium 0.9 doesn't work with Firefox 2.0, due to a bug, and that (b) Ubuntu uses the wrong version of the Java Virtual Machine for the Selenium Remote Control! It's a real shame that this isn't more clearly referenced, as once I'd installed sun-java5-jdk via Synaptic, the server started to respond a little better. Although, as intimated in (a), Firefox doesn't work, I have now successfully got it to work with Opera.

But all is not as good as I'd hoped though. Running my test demo on Windows runs through 82 pages, 247 tests in roughly 90 seconds. It's impressive to watch the test script output fly by. On Ubuntu though, the result is a little different. The same 82 pages and 247 tests take 300 seconds! I've looked at the web page generation code, via Devel::DProf, and have managed to improve a few areas, but a single page on Windows has a Total Elapsed Time of 0.694698 Seconds, and 0.387299 on Ubuntu, so the Perl code is definitely not the problem. The laptop I'm testing on is dual booted, so it's the same HDD, CPU, etc. I'm using Apache 1.3.37/MySQL 4.1.22 on Windows and Apache 1.3.34/MySQL 5.0.38 on Ubuntu, but they don't seem to be the problem.

It would seem that IE 6.0 is actually faster than Opera 9.21! I've tried various suggestions to improve Opera's performance, but the tests using Opera are still taking 300 seconds on Ubuntu and over 500 seconds on Windows, compared to that of 90 seconds for IE :( Yes Opera is that bad. Once upon a time Opera claimed to be "the fastest web browser on Earth!", thanks to Selenium I can visibly prove that wrong.

I'm still intrigued to find out if anyone has successfully got FF2.0 to work with Selenium, so I'm hoping that there might be someone at LugRadio Live that might be able to help me over the weekend. If anyone has had more success in getting FF working, please let me know, as I've been unable to get it to work either on Windows or Ubuntu and would dearly love to be able use that as the example browser.

At least I can now present my talk on a Linux platform on Sunday, although I'll just have to rearrange my talk slightly, so I'm able to talk over the top of the test run. I wasn't looking forward to having to present it again to a Linux crowd using Windows. The local LUGs have been very forgiving, but it has been a bit embarrassing to explain that I can't get it to work on Linux. At least now that I know the above, I can hopefully fend off any similar problems and look cool ;) Admittedly I won't look as cool as Luke though, especially when he begins his talks with a juggling display. Oh well, they'll just have to make do with me :)