In this chapter, we will cover two topics: tests and deployment. Although they are covered in the last part of the book, they should not be considered to be the last things to think about when developing an application.
For example, TDD is a software development process that relies on the repetition of a very short development cycle: requirements are turned into test cases, then the software is improved to pass those tests. This means that, in this case, tests are done first while developing a feature.
Deployment and production practices are key to the successful life of the application. It is preferable that your application is not tied to a particular deployment environment and it is externally configured to run on it. Also, it is very important to think about how your application will behave in production; you need to think about the stability, availability, and recoverability of your application. These things, and more are managed from within your...