Skip to main content

Posts

Testing and Syntax

The other day I got tagged on a Twitter thread started by Wicked Witch of the Test about people with a background in linguistics who’ve ended up in testing. That prompted me to think about the language concepts I've found valuable in my day job, then I started listing them, and then realised how many of them I've mentioned here over the years .   This post is one of an occasional series collecting some of those thoughts.  --00-- If you're not familiar with the term syntax, you've probably heard of it by another name, grammar . It's the set of rules that defines the acceptable combinations of words in a language. Most native speakers have an instinctive grasp of it in their language, even if they were never taught it explicitly. Knowledge of English syntax is what can tell you that the first two of these are legitimate structures (even if the second makes no sense) and the third is not:  As a customer I want to log in using two-factor authentication to protect...

It Takes a Village

It takes a village to raise a child , they say. It can take a village to explore a piece of software. I noticed occasional spiky patterns of increased latency in the production data for a service I work on. Unfortunately for reproduction purposes, the requests contained personal information and so were not recorded. I experimented for a while but couldn't find a way to provoke the same shape behaviour. I spoke to the team whose library is invoked by that endpoint but we couldn't make it happen together either. I proposed that we log anonymised data under specific conditions to help diagnose the issue. My team agreed and our PO took the task of asking the relevant parties for approval. They gave it, we got the change made, tested, and deployed at the next opportunity. After that, as new occurrences of the issue began to appear, I collected and reviewed the data. It was unusual (and suspiciously so!) but my sight remained limited by the the systems I had access to. I reached out ...

Agile in the Ether

After hearing good things about it for years, and failing to get one of the limited spots at its lean coffee events for almost as long, I was excited to finally be at Agile in the Ether last week . Here's a few aggregated notes from the excellent conversation.  How to encourage non-digital stakeholders to understand the value of discovery and outcomes over outputs? The business has scaled quickly and is large and stakeholders just want features They don't talk about problems and give people space to offer solutions Help them to think about how they experience the world outside work Lay out the risks/benefits of switching to incremental devlopment Get an ally who is respected (by them) to support your case Show business which haven't adapted, e.g. Blockbuster Show business which have adapted, e.g. McDonalds Let stakeholders observe interviews with users to understand their prioritie...

Testing is not the Goal

  The Association for Software Testing is crowd-sourcing a book, Navigating the World as a Context-Driven Tester , which aims to provide responses to common questions and statements about testing from a context-driven perspective . It's being edited by Lee Hawkins who is posing questions on Twitter ,  LinkedIn ,  Slack , and the AST mailing list and then collating the replies, focusing on practice over theory. I've decided to contribute by answering briefly, and without a lot of editing or crafting, by imagining that I'm speaking to someone in software development who's acting in good faith, cares about their work and mine, but doesn't have much visibility of what testing can be. Perhaps you'd like to join me?   --00-- “Testing is a bottleneck” I'd really hope it isn't, but let's see if we can work out what's happening and how we could improve the situation. First, what are you seeing that makes you think testing is a bottleneck? When I...

Testing and Words

  The other day I got tagged on a Twitter thread started by Wicked Witch of the Test about people with a background in linguistics who’ve ended up in testing. That prompted me to think about the language concepts I've found valuable in my day job, then I started listing them, and then realised how many of them I've mentioned here over the years .   This post is one of an occasional series collecting some of those thoughts.  --00-- In The Complete Plain Words , Ernest Gowers notes, acidly, that: What appears to be a sloppy or meaningless use of words may well be a completely correct use of words to express sloppy or meaningless ideas. It surely sounds trite to say it but our choice of words can make a significant difference to how well our message is understood, and how we are judged. We choose from amongst those words we know, our lexicons . The more my lexicon agrees with yours,...

Testing and Language

    The other day I got tagged on a Twitter thread started by Wicked Witch of the Test about people with a background in linguistics who’ve ended up in testing. That prompted me to think about the language concepts I've found valuable in my day job, then I started listing them, and then realised how many of them I've mentioned here over the years . Like all collaborative activities, software development requires a medium for communication. As humans we tend to choose language, written and spoken. This is great! Most humans come preinstalled with language. This is terrible! Most humans come preinstalled with ambiguous language and a huge blindspot about it. Who hasn't been in a conversation where it turns out that was delivered, despite being precisely what was asked for, turns out to be nothing like what was asked for?   We all know intuitively how low the signal-noise ratio can be, but the field of linguistics has terminology and theory that can help us to tease out w...

Red Testing Hood

Angie Jones, The Build That Cried Broken Like the boy who cried wolf, the build that’s repeatedly red for no good reason will not be trusted. Worse, it will likely end up in a persistent red state as people stop looking at the regular failures. Eventually something important will also fail ... and no-one will notice. At CAST 2021 , Angie told us this and other stories about a team she was on, one who found themselves in that bad place but used their wits to escape and lived happily ever after.  Well, perhaps that’s an exaggeration: they tolerated living in a short-term bearable state where a reliable kernel of tests supported development and deployment and a set of flaky tests were worked on to the side. Separating off the flakes was a good move but it was supported by others, including assigning a team member to investigate all failures and setting limits on the percentage of tests t...

AI Needs Testers

Tariq King, Towards Better Software: How Testers Can Revolutionize AI and Machine Learning Tariq issued a powerful call to arms in his talk at CAST 2021 . Yes, AI/ML is new technology and, yes, it is solving new problems, and so, yes, testers may find themselves out of their comfort zones in some respect. But there are parallels between machine learning and testing that should give testers confidence that they have something valuable to contribute right now: mapping inputs to outcomes for black boxes, partitioning a possibility space, and data wrangling.  Learning is part and parcel of testing, so why think we can’t learn what’s needed for working with AI and ML systems? And don’t forget that testers come preloaded with universally-valuable skills such as exploring, questioning, and assessing. Without some kind of challenge, Tariq says, AI is going to continue powering the ...

Laugh Don't Cry

Laurie Sirois, Quality Isn’t Funny Why didn’t we find this bug in testing?  Without a sense of humour, hearing that kind of question repeatedly could bring people to tears. At CAST 2021 Laurie Sirois encouraged us to deploy laughter to defuse those tense situations, improve our relationships, and grow other people’s perceptions of us. As a manager in particular, lightening the mood can do wonders for a team’s morale, creativity, and sense of safety. Care needs to be taken over the style and timing of the humour used. Sarcasm and inside jokes might work well with trusted peers but may not be appropriate when delivering feedback. Even self-deprecating  humour can make others uncomfortable in the wrong context. Sounds challenging? Don't worry. If you’re not a natural stand-up simply smiling more frequently is a good start and it turns out that sharing surprising insights (the aha!) can...

Scale Model

Greg Sypolt, Building a Better Tomorrow with Model-Based Testing As he was telling us at CAST 2021 , Greg ’s team have built a model-based testing system and integrated it into continuous integration infrastructure which has scaled to be capable of exhaustively exercising the 30 or 40 deployment scenarios that each of their products supports. The models bring advantages such as describing system behaviour in reusable chunks that are independent of implementation details, making maintenance straightforward, and broadening coverage. Sounds great, and is, but it comes at a price. Getting buy-in for this kind of approach — from both management and the team — can be tricky and  there’s a lot of up-front effort, unfamiliar concepts and technology, and steep learning curves. The models Greg needs can be quite simple because each product is basically a linear navigation through a seque...