In-browser automated web site testing

Since I heard about first release of Mozilla browser, and the fact, that most of it was written in JavaScript and XUL, I thought about creating a web testing tool, which would use Mozilla-based browser to test web site functionality automatically.

The tool would automatically visit every link on every page and would try to click every button and so on. The tool should be configurable via some sort of script language. In the end the human user would be presented with a report.

The advantages are obvious - this is actually the only way to handle automatically sites with complex JavaScript functionality, especially those, which construct URLs on the fly and handle user clicks in JavaScript functions. It would not be very useful for load testing - but there are enough other tools to accomplish this task.

It looks like Selenium IDE try to do something similar, but their approach is more browser-neutral. They embed the web site to be tested inside their own iframe and then control the test execution from there using JavaScript. I haven't tested it yet, so cannot comment on its actual usability. It is open source, so you can give it a go if you find it interesting.

Comments

I've been evaluating Selenium Core with Java API recently and found it quite useful. The minor drawbacks are, it requires a server as a separate process and the core initialisation takes some time (it needs to start browser and perform som initialisation) so your testing framework must support running custom initialisation code before running the whole test suite. Which JUnit 3.8 doesn't have for example if you are not using ugly TestSuite's.

Hmm. JUnit is probably better if you can get away with simple submission/text parsing for your tests. A browser-based test suite is very useful when you have complicated JavaScript, which generates 90% of your page. I know it's ugly, but some interactive sites are built this way.

Add new comment