Term

Automated testing

Verifying software with programs that run a suite of tests after every change, from unit tests to full user scenarios. It enables more frequent and safer releases and reveals when a change breaks something that already worked.

Updated

What it means

Automated testing means software correctness is checked by programs rather than by people clicking through. Tests run automatically after every code change and immediately show whether something has broken.

There are unit tests for individual functions, integration tests for how parts of a system work together and end-to-end tests that simulate a user's whole journey, such as placing an order in an online shop. Together they form a net that catches most bugs.

Tests are part of CI/CD and the DevOps culture. They allow changes to be deployed often and safely, because every change passes the same checks as the first release.

How it works in practice

In custom development it is wise to agree in the contract that the supplier hands over the tests too, with a defined level of coverage. Without them every later change is riskier and costlier.

Tests run in staging or an isolated environment with test data. If the system handles personal or financial data, the test data should be anonymised.

Writing tests is a development cost. If a company builds software for itself and capitalises it as an intangible asset, testing costs before it is put into use may form part of its cost.

What to watch out for

Green tests do not guarantee bug-free software, only that what the tests check works. If there are no tests for critical calculations such as tax or prices, errors reach customers without warning.

Neglected, flaky tests that fail at random get ignored by the team and lose their purpose. Maintaining them is part of paying down technical debt, not a luxury.

Need the term explained on your own situation? Consulting from €55 / hour excl. VAT, depending on topic and complexity.