Victory and Defeat in the World of Selenium

 Pass. Fail. Pass. Fail. Fail. Pass.

These words have just about defined the testing I've been doing over the past couple weeks. If perhaps by some galactic anomaly you haven't noticed, Liferay has slowly (actually, very quickly) been implementing a *brand new* Selenium testing framework. In a very short frame of time we've gone from having 0 tests to the 191 tests that are in trunk now. This number will continue to rise as Mike and I continue to flesh out the testing framework we've created.

Victory

Selenium tests have been proving themselves incredibly useful as we've run our battery of tests relentlessly against Liferay again and again. Most recently we encountered a bug which caused the plugin update notification to remain permantly hovered at the top of a page. Very annoying for obsessive types who need to see their dock all the time!

 


This bug has since been fixed. Or has it? It's resurfaced once already because of a different fix made! We have since created a new Selenium test that will automatically check this functionality and make sure that any new changes to existing code will not result in you having to know that your plugins are perpetually out of date. That's Selenium at its best, working to make sure little bugs like this don't come crawling back to haunt you!

Defeat

 

One of the awful consequences of automated testing though is when it goes wrong. And. It. Goes. Wrong. All. Day. Long.

 

 

The other hand of automated testing has been untold hours spent looking at a failed test and pondering the foreign language that it has vomitted back at me. An obsessive compulsive tester's nightmare. Not me of course. While they've been extremely useful, and will continue to be so, there always seem to be some issues that are impeding absolute testing perfection. Over the course of the past week and a half I've run into errors that consistently come up (bugs) and freakish mutations of selenium coding that have confounded me for hours.

Most of the time those freakish mutations have turned out to be bugs in Selenium's coding. From its failures to input "y's", "!'s", and ".'s" to the down right finicky way it deals with UTF-8 encoded characters. To selenium developers: I love you. But help us. Please. To the community: know that Mike and I are working our butts off to get these tests running smoothly and in a way that will minimize regressive bugs.

-jr out


Blogs
Thanks JR Houn for sharing the info!

btw i do have one question , are you guys getting the drag and drop working with selenium ? Also is the selenium test framework open sourced ;)
Hi Rajesh!
Getting drag and drop to work with selenium has been like coralling a caged beast with a toothpick so far, but we're still working on it! And yes I'm fairly confident that the selenium test framework is open source emoticon