In order to deploy software quickly and automatically, it is essential that it can be tested automatically at any point during the project. In order to be able to carry out testing at various levels, we rely on different technologies.
From classic unit tests, which are highly functional but often too encapsulated, to functional tests with Behat and load and performance tests with Gatling, we use different types of tests. We even continuously test pagespeed and Y-Slow with GTmetrix. This means we can intervene if necessary - and you can sleep soundly.
With extensive web projects, the number of tests is usually relatively high, which means that testing would take a lot of time if all tests were carried out at the same time. Our solution: the right testing at the right time.
The commit stage is triggered with every code commit and checks the codestyles and semantic errors.
Once the commit stage has been successfully completed, the functional tests follow on the functional stage.
However, there are also certain stages that run for so long or require so much load on the system that they are triggered at certain times. The two stages that we mainly use are the acceptance stage and the load stage. The acceptance stage carries out extensive interface and functionality tests and therefore requires so much time that it is carried out at night in most projects. The load stage also usually has to be operated at night, as connected systems are often also tested here and these require the load for their actual purpose during the day.