In this chapter, we take a deep dive into testing cloud-native applications. Testing has matured a lot from manual testing to automated testing, using various testing tools, strategies, and patterns. The benefit of this approach is that the testing can be done frequently in a failsafe fashion that is important for cloud development.
We will cover the following topics in this chapter:
- Testing concepts, such as behavior-driven development (BDD) and test-driven development (TDD)
- Testing patterns, such as A/B testing and test doubles
- Testing tools, such as JUnit, Cucumber, JaCoCo, and Spring Test
- Types of testing, such as unit, integration, performance, and stress testing
- Applying the concepts of BDD and integration testing to the Product service that we developed in Chapter 2, Writing Your First Cloud-Native Application, and enhanced in...