We talk about the Testing Pyramid, and it has helped move us away from the focus on end-to-end testing. But just ‘unit’, ‘component’, and ‘integration’ is not sufficient as a testing vocabulary.
In this talk I go through the different types of testing we need to apply to keep our increasingly extensive services landscape running smoothly. We’ll look at all the different parts of our code we need to test, what type of unit tests are applicable, how and where to test our APIs, and the APIs we depend upon, what exactly is an ‘acceptance test’, how to deal with multiple clients, multiple API versions and exactly when we have a need for a test environment. And how all these tests are parts of your continuous delivery pipeline.
All of this is shown as code written specifically for the purpose of the talk, so that we don’t get stuck in abstractions, but have concrete examples to show how it works.
The code will be available from github, including the pipeline and deployment setup, so you can take the learnings back to work and apply them immediately.