Book review: A practical guide to Testing in DevOps (Katrina Clokie) – get it, read it!

Headline: get this book! read this book! Link: https://leanpub.com/testingindevops

Katrina Clokie’s book “A practical guide to Testing in DevOps” is a “must read”, and not just if you are a tester encountering DevOps. As Katrina says in the preface: “This book is for testers who want to understand DevOps and what it means for their role. It’s also for people in other roles who want to know more about how testing fits into a DevOps model.” It is engaging, informative, full of useful examples, case studies and evidence, and gives pragmatic, thoughtful guidance that encourages us – the readers – to use the information provided to craft our own approach based on our own circumstances.

I’m particularly pleased with three of Katrina’s themes:

  • this is about people as well as technology – how people engage, communicate, cooperate, solve problems, achieve goals – together;
  • separating the activity of testing from the role “tester” – the activity is needed, the role may change;
  • the purpose of testing is to contributing to our shared understanding of, and delivery of, what our stakeholders, customers, users, colleagues require from IT: a subtle and changing mix of speed, predictability, quality and a great user experience.

I kept finding points in the book that are applicable for any project, any organisation. There are useful ideas in this book if you are working in a DevOps environment, of course, but I believe you will also find it a source of useful ideas and techniques what ever your project methodology. Katrina provides chances for all of us to review our current position, and just shake it up a little, to see if we can improve. For each of us, for each organisation, team, what we need to do is different. Katrina is rightly emphatic that there is not one right answer, instead she provides aides to thinking, communicating, problem solving.

I really like the way Katrina references and quotes so many colleagues across the industry – this really helps build the feeling of a community working together, sharing ideas, not always agreeing, but debating openly and constructively.

She encourages us to try ideas and propose changes on a small, experimental scale if we or our colleagues are nervous “…spend an hour to give something new a try…”

After an introduction to the concept of DevOps, the book is divided into six main sections:

  • Testing in a DevOps Culture;
  • Testing in Development;
  • Testing in Production;
  • Testing in DevOps Environments;
  • Industry Examples;
  • Test Strategy in DevOps.

I was pulled into the book straight away. Highlights for me in the first section are:

  • visualising the test strategy – what we think we are doing, what we are actually doing… and what we should be doing. Newsflash: get the people without “tester” in their job title to do the discussions, and as the “tester” listen, facilitate… and allow the others to challenge your assumptions!
  • blazing a trail – really good ideas, hints and tips for building meaningful multi-way conversations where we listen as well as speaking… Forging the pathways between groups, teams and individuals, and reinforcing those pathways by rich rather than fast communication.

I have made so many notes and comments, just on that first section – it sparked many useful ideas, reinforced some thoughts, and provided me with new tricks, tips and tools that I shall try out.

In the second, third and fourth sections, Katrina provides examples and evidence for how testing – the activity – takes place successfully outside Testing – the team or Testing – the life cycle phase. This is such a refreshing read; my own experience since I started in IT is that good, productive, thoughtful testing can be done by people other than testers, and during activities not called testing. Developers, Ops folk, Support teams, Sales, Marketing – many people in an organisation can do good testing, often with a focus that the “Tester” may miss.  She discusses the advantages and risks of testing in development, production and DevOps environments, showing options for how risks can be mitigated, whether by use of tools, experimentation, exploration, group activities, process changes, shifting left and/or shifting right.. I’m not going to share too much here, just encourage you to buy and read the book!

The fifth section, the industry examples, is useful because it provides a wide range of approaches. Not all of us will find the same approach appropriate; something essential to success in one organisation may be damaging in another. There is a good mix of methods, tools, approaches, and types of testing covered, in this section and in the others, so you should find something to use as a starting point for making your own model.

By the time I reached the last section of the book, I had a mass of ideas, notes, and things to follow up, and I would be surprised if you did not feel the same way.

In the final section, Katrina brings everything together to help you define your own strategy for testing DevOps. Your’s will be different. It will be the strategy that is right for your team, your organisation. In this section she helps us to think about our organisation’s appetite for risk: I also have found this to be extremely useful point to consider and discuss. Are my stakeholders risk averse, or risk takers? Am I aligned with them? At this point, should I challenge or support their stance? Katrina provides useful examples of the type of question to ask in order to understand appetite for risk, identify which risks are of importance, and from that decide what activities will mitigate the risk. Those activities might include testing – the activity – but there will very likely be other activities that will mitigate the risks just as well.  From this we can draw up a strategy for testing, acknowledging that it is part of but not all of the activity required to provide our stakeholders with the quality, speed, predictability, risk mitigation and so on that is right for their circumstances.

Whether you are working waterfall, V-model, W-model, Iterative, agile or DevOps – you’ll find some useful ideas in this book.

A good ending to an excellent book, which I have no hesitation in recommending. Thank you Katrina!

 

Leave a comment