Digital systems. Expertly delivered.

Test Driven Development

Test Driven Development

We use Test driven Development (TDD) to ensure that systems works perfectly when we deliver them and continue to work thereafter, as we update and improve them.

We also use tools like selenium to simulate users doing certain things on the website, like adding products to a cart and checking out. We maintain libraries of these tests and can run them automatically every time we make a change. This helps to reduce the significant amount of manual testing previously required and helps us to make more predictable changes and updates to the site. More time to focus on more important things.

We also use ‘unit tests' within the source code to mimic the code running and ensure the design and behaviour of the code are as intended. A unit test provides a strict written contract that the code must satisfy and is typically written before the code is written. We use automated tools to run these unit tests together to find problems across a system early in the development cycle using integration tests. Unit testing allows us to update or ‘refactor’ the code later, and ensure that the feature or module still does what we expect it to.

Apart from the robustness of the system the other advantage of writing acceptance and unit tests is that they provide living documentation for the system as it evolves, which is super useful for developers looking to understand a unit or clients wanting an ‘under the bonnet’ understanding.

More on Byte9 Methodology