How to avoid lack of tests maintenance?

Lack of maintenance leads to automation failure

Implementing automated tests is an investment. It almost always costs more to automate GUI tests than to do them manually. This principle is well integrated by all teams and their managers. It is in this context that a lot of time is allocated to the implementation of this maintenance, which aims to save time and money in the medium term.

How to avoid this maintenance problem?

In order to avoid the problem of maintenance, you must obviously maintain your tests. Unfortunately, the non-maintenance of tests, just like the technical debt of an application, is not something that is done willingly. This is why the team must put in place certain good practices to avoid this problem:

Limit the number of tests

This number must be limited so that the maintenance is sustainable by the team: this forces to make choices and to remove tests from the campaigns but this decision will always be known and the not executed tests will be chosen according to their utility. You can obtain infinite software quality with an infinite number of tests, but you will not afford it.

Build your tests in order to limit their maintenance

Automated tests are code. As such, good code practices must be used. As you know, tests regularly go through the same screens and perform common actions. With a bad architecture, changing one of these actions forces you to update all the tests. A good architecture allows, on the contrary, to make only one modification that will impact all the tests. To do this, it is necessary to create sub-scripts that form bricks, each test calling a series of bricks.

--

--

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store