Continuous testing

Maarten Draijer

The world of software development is changing rapidly. For software companies it is therefore of the utmost importance to create and finish new solid products while being expedient. Agile and DevOps have therefore been created. They are tools that help finish software fast and flawless.

In DevOps software development the next four phases are of importance:

  • Continuous Integration
  • Continuous Testing
  • Continuous Delivery
  • Continuous Deployment
  • Continuous Provisioning

We have talked about continuous integration before. In short it is a process in which developers can continuously integrate their code with the source code, preferably multiple times a day. When the code is integrated it is immediately checked and and tested. By integrating the code more often errors are therefore spotted sooner.

The ‘traditional’ approach of software testing

Testing always has been an important part of software development. It is a process in which you validate if the product is still compatible with the demands or conditions of the client. During the tests you can check if the product matches the expectations of the end user.

It is in the testing phase the developer has to realize of he can continue with fleshing out the product or if certain aspects first have to be improved. It is important to know this as quickly as possible and act accordingly. If you would continue working on flawed product for too long, you would have to fix a lot of problems near the end. This is major flaw in 'traditional' testing.

What is continuous testing?

Continuous testing is a process in which code, that was written during the continuous integration phase, is tested in various ways. It is tested for its integration, performance, speed and user acceptance. Other tests can be added, changed or removed. These test are done completely automatic and no human interference is necessary.

The benefit of continuous testing for companies.

Nowadays continuous testing has become a crucial part in the DevOps software development process. However, this faster approach of testing is being rolled out very slowly. Test tool provider Zephyr did a study and the results stated that about 70% of all companies use the agile approach of testing while only 30% op the companies adopted continuous testing.

That is unfortunate, continuous testing creates a greater constant insight in the quality of the software that is delivered to the client. Adjustments are made far easier because flaws and bugs are detected quicker, which means a faster fix. That leads to better software which is finished sooner.

Create your GitLab instance within just 5 minutes
Create an account