insights | 02.10.2017

What is Automated Web Testing and why use it?

Automated web testing

Doing the same job over and over again is boring. The washing of dishes, for example, can be broken down into three steps – take the dirty dish from the pile of dirty dishes, wash it in the sink, put it on the pile of clean dishes. Do it long enough and your mind will wander and errors will start to creep in – you’ll drop and break the occasional dish. That’s why the dishwasher was invented, so that the boring part can be left to a machine while all we have to do is put the dirty dishes in at the beginning and take the clean dishes out at the end. Automated web testing software was written for exactly the same reason.

When a developer is writing code or building a website, the automated web testing software can be coded to constantly check that what has been written still works correctly. A team of developers will all write code differently, but with a suite of automated tests constantly checking that what they produce produces consistent results that does what it’s supposed to do, the task of the software tester becomes easier. The tester no longer has to worry about checking the same thing over and over again to make sure it still works correctly, but now only has to check new development, confident in the knowledge that if any changes made by a developer have affected functionality that is already established, the automated tests will pick up an error.

Here at Xigen we go one step further. We can use automated web testing to monitor the processes on your site to ensure they all work together correctly and keep your site running effectively. This means that you can be confident in the knowledge that when something is happening that shouldn’t be, our tests will alert us to the problem so that we can immediately work on a solution.

What does Automated Web Testing do?

Simply put, automated web testing is a program or script that can be run which takes control of a web browser like Firefox, Chrome or IE, and then goes through a series of steps on a web site replicating user interaction.

It’s a little more complex than that though. Automated testing can be used to check anything from the text on a button through to the most complex eCommerce checkout system and beyond. It can check that the correct validation messages are shown when a form is incorrectly filled in, that the correct delivery charges are shown in a checkout process, even that the location of a text field on the screen is exactly where it should be.

Every single property of every single element on a web page can be checked and validated to ensure that the page appears and works correctly in a variety of browsers.

How does it do it?

All modern browsers have support for automated web testing built in. They allow external systems to access the components that render the web page and control them in the same way that their user interface does. Automated web testing systems will use the browser components to direct the browser to interact with the web pages, analyse and interact with the elements on the web page, and cause the browser to behave as if a user were interacting with the page.

There are a vast number of software packages available for automated testing and these range from the simplest recording and replaying clicks on a web page, to the complex scripted systems that can run multiple tests simultaneously on different browsers. They range in price from “free” to £4.5K per year licence (including support!). The most commonly used testing packages utilise Selenium which is an open source framework that can communicate with all the browsers, and tests can be scripted in a variety of programming languages including Java, PHP and even one called Groovy!

When do the tests run?

Tests can be set to run whenever is necessary, from once a week to check on a rarely used form, to every five minutes for system critical processes. Here at Xigen we can advise on the best frequency for your tests so that the best balance can be achieved between continual system monitoring and minimal effect on your site performance.

Where do they run?

Tests can be run on any computer, though it is recommended that a dedicated server is used for the regular tests. The dedicated server is recommended for the following reasons:

  1. The server runs continually so tests are able to be run at the scheduled times without user intervention. While a test can be scheduled to run on a regular pc, modern computers have power saving features that will turn it off or put it to sleep if it’s not being used. A server is designed to be constantly running and optimises it’s power use appropriately.
  2. Servers have more flexible configurations than regular pcs so they can be configured to use only the resources required to run the tests.

Who runs them?

Initially, tests will be run by the person writing them, so that they can be monitored to ensure that they’re doing exactly what they’re supposed to do and optimised so that they run reliably. After that they would be uploaded to the server and scheduled to run regularly and automatically. After that the performance of the tests will be monitored, not just to ensure your site is running as it should, but also to ensure that the tests are running correctly and not producing any false errors which could be reduced by further optimisation of the test scripts.

Why do we do Automated Web Testing?

Because of their scripted nature, automated web testing produce replicable and reliable results. This means that the only thing that can cause a test to fail, barring catastrophic failure of the test server, is a problem with the website itself. Any failure, whether caused by a payment gateway problem or simply the site running slower than usual can be picked up by these scripts. The cause of failure can then be analysed and the result used to improve the performance of your site. Additionally, because the tests can be run 24 hours a day, 365 days a year, you can have the added confidence that there’s a set of reliable, impartial, unsleeping eyes watching over your site’s processes, making sure they’re running properly.

Xigen’s dedicated team of QA Analysts look after all our web testing services. Their years of experience in testing software and software processes make them ideal to create the ideal suite of tests that will meet your web monitoring needs.

go back Back