The importance of testing
Testing is a crucial part of the application life cycle, and it differs greatly from debugging. Although debugging certainly involves execution testing, the debugging activity is aimed at locating and correcting code defects, while testing is aimed at demonstrating application correctness. The testing process involves proving that the software requirements are implementable in practice, and that they have been implemented according to the specification. Certain testing approaches, such as correctness proofs and peer reviews, don't even require code execution.
In the modern world, most software development teams aim to create a continuous integration and/or continuous delivery (CI/CD) framework. Automated testing is a prerequisite of any type of CI/CD framework, as you have to verify the application correctness prior to pushing the code changes to production.
Testability has been one of the challenges of serverless compute since its arrival. Luckily for us, the new...