Chapter 11

Deploying Your Application

YOUR END GOAL is actually releasing the product you built to your customers. The example applications discussed so far have been small and self-contained and therefore after thorough unit and behavior testing would be ready to be “released” straightaway with not much further testing. However, what if the applications you are building are small components that form a larger application stack? For example, the data handling and processing might reside on back-end components and some other components collect this data and display the front end to the customer. In such a scenario, your code might pass through many iterations before you have the confidence to release it to customers. Essentially, you should put into place a deployment pipeline, and as the code moves through the pipeline your confidence in the business readiness of the various features or product changes can only grow.

The chapter looks at how you can construct such a pipeline and the kinds of tests and tooling you can build around components to ensure that you have integrated them successfully with the rest of stack before releasing to your customers.

The key aspects of this chapter include deployment to various environments, such as the development, stage deployment, and production. The different environments provide isolated or integrated areas for your components to enable QAs and developers to test their applications as required.

Another notable area of the chapter is that ...

Get Testing Python: Applying Unit Testing, TDD, BDD and Acceptance Testing now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.