Architecture impacts heavily testing. The way you test a monolith is different than how you should test a loosely coupled system. Let’s look at microservices as a prominent exponent of loosely coupled systems.
For loosely coupled systems, i.e. microservices, tests shall not be done in a separate test phase, by a dedicated test team, but instead collaboratively by cross-functional product development teams. This means that everybody is responsible for the quality of the product.
Continuous Testing, as automated testing within CI & CD as well as a culture of experimentation and exploration, are enablers to release loosely coupled services fast and reliable.
There is a shift left towards automated unit and component level tests, executed in Continuous Integration & Continuous Delivery (CI & CD) pipelines that are owned by product development teams.
Besides the shift left, there is also a trend that testing, deploying and monitoring on production gets closer together. Controlled experiments in production help to identify problems fast and to get fast feedback from actual customers. Market-oriented organizations optimize for speed and the shift right in testing helps to accomplish these goals. As part of continual experimentation, it is possible to explore and learn. And with controlled experiments, you get feedback from customers, using the application in real world conditions.
Software Development Manager und Continuous Testing Advokat.
Seit 15 Jahren arbeite ich als Development und Test Team Lead, Test Manager, Performance Tester und Software Engineer. In meiner derzeitigen Position leite ich ein Entwicklungsteam, das im Rahmen von Continuous Integration & Delivery für die Entwicklerteams Tests as a Service anbietet.