Automated Website Testing – A Complete Site Wide Test in Minutes

Automated Website Testing

I was recently told that todays advanced software systems represent the single most complex artifact or ‘thing’ that mankind has created.

Whilst this isn’t true for all systems, it’s certainly the case that even moderaly complex systems soon contain more details than one programmer can hold in their mind. This gets worse for mature systems in a maintainence phase, where the developer isn’t regularly working to update the application.

This ‘I can’t remember the details of everything’ problem leads to lots of documentation (if your disciplined) and to an inevitable client frustration where new defects are introduced into a system whilst work it’s being worked on. This problem is well documented in software engineering literature and appears indemic to the entire software industry (indeed it’s the frequency of introduced bugs people count, their existence is assumed). We certainly don’t claim to be immune. That’s why I’m excited by the results that our staff (thanks Liam, Terry, David, Liz & Co) have been getting using the Selenium testing framework.

Selenium allows developers to create automated (client side) unit tests for standard website functionality. For example, a series of Selenium tests could be written to automatically check that the system functions correctly when ordering an item, conducting a search, updating user details etc. Once the tests are in place, they can be run in a few moments at any time as required.

Click here to see an impromptu video we took of Selenium tests on an application we’re building at present.

Automated Website Testing Benefits

Some of the benefits we’ve found using automated testing are:

  1. Detect more bugs during development – the process of writing tests caused us to find defects in what we deemed otherwise ‘perfect’ code.
  2. Confidence in refactoring – if for whatever reason, existing code must be modified / refactored, this can be done with far greater confidence.
  3. Confidence for additions – experienced developers will know it’s not uncommon for changes in one module or function of a system to have unintended effects elsewhere. Whilst system wide human based system testing isn’t practical, system wide unit based testing is straight forward.
  4. Better team programming – each of the above factors becomes even more important in team development projects.

Automated Website Testing Costs

The obvious cost is time (which soon equates to money). In our first major deployment of Selenium Tests, we estimate an overhead of 20%. With that said, this project is currently part way through UAT (user acceptance testing) and the defect feedback rate has been incredibly low, so clearly the return should be quick enough.

For more about the Selenium framework, click here.

4 Responses to “Automated Website Testing – A Complete Site Wide Test in Minutes”

  1. Very informative post, great post. Subscribed to feeds

  2. Hi excellent post there. keep it going.I seriously like to read your post.Last of all have good night

  3. Conrad Palau says:

    I just wanted to drop you a line and let you know that I really have enjoyed your well-written articles. I have bookmarked this site and will definitely be checking back for new posts.

  4. Jessica says:

    Interesting post, but your web design could be better.

Leave a Reply