Chapter 11. Testing in Production
In this chapter, I’ll talk about the benefits of testing in production, which is the environment we share with our users. I’ll cover why it is worthwhile and how to do it safely.
When we test in production, we still hide prerelease features from users until we are ready to reveal them, but we segregate the behavior using logic built into our application instead of via separate deployments. You’re already familiar with the techniques around feature flagging that we use to disable unfinished features. In previous chapters, I also mentioned how most feature flag frameworks allow for sophisticated toggle ON strategies. Some of those strategies are particularly interesting because they allow developers, QA engineers, and selected stakeholders to peek under a toggle to verify the feature. That’s what we will cover in this chapter.
In particular, we’ll look at the most common activation strategies we can leverage to perform exploratory testing, and the trade-offs between them (have another look at Chapters 3 and 8 if you want to refresh your knowledge on feature toggles in general). We’ll also cover how to manage test data, debugging, and other challenges. This lets us build our confidence that the features work like they should in the most authentic context possible: production.
Overall, testing features in production is not just possible for continuous deployment teams: it should be part of their routine. Production exploratory tests should at the ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access