How can we help developers understand the value of exploratory testing?

We all have different ways to working together, at the minute lots of us are working from home and maybe re-evaluate how we do work together as a team - how we can communicate value, have you gained some new insights or things you’re going to try?

Let’s talk about helping devs understand the value of exploratory testing. We asked on twitter and Linkedin and got some great replies:

Pair with them

Make them responsible for all of their own testing.

Pairing & mob testing are great tools for this. While doing this, I like to go slow and explain why I’m exploring a certain part of the product so they can (hopefully) pick up on my thinking and begin to use those ideas to test on their own.

Just do it and file your bug reports with a note “Discovered during an exploratory testing session” or have a label for this.
If you find nothing, send a message to say you are now confident about the feature or this part of the product tested!
Make it visible!

In my experience: just teach it to them. Most developers actually like it and when you show them how they can integrate it into their daily work, they do it.

Why just developers? I think it applies to all (testers included).
Exploratory testing provides valuable exposure without following an ac to the letter or in times when you are in a more agile sprint it shows its real merit. Throughout my career exploratory testing has exposed issues that would have been missed if the ac’s were followed / exposed late in the sprint by which point it blocks the sprint / delays it’s delivery. Exploratory testing should be adopted by more as a positive not a negative and could be considered the first stage whilst awaiting the completed sprint being delivered into test.

Developers aren’t stupid, and it’s not a difficult concept to grasp. If they’re not buying it, I doubt it’s because of a lack of understanding.

  • Maybe they don’t care because it’s “not their job” and they’ve got enough on their plate as it is.
  • Maybe there’s a strong testers-as-gatekeepers culture, making it seem like you’re moving the goalpost when you test things that weren’t asked for.
  • Maybe the testers are in the habit of winking and smiling rather than showing their work.
  • Maybe there’s an antagonistic relationship between developers and testers (due to dysfunctional KPI’s, for example).

Users are not always logical or use software as intended. Exploring helps to identify those scenarios that haven’t been coded for or specified in the ac. No one really knows how software works until it is used. Test ideas lead to new ideas.

What can you add? It is something you’re thinking about? Is there an aspect you’ve not considered before?

The scale of exploration when doing testing can vary a lot. (https://www.developsense.com/blog/2014/07/sock-puppets-of-formal-testing/)
The testing skills of the testers vary a lot. The exploration skills vary a lot.
The understanding of the exploratory scale by the testers can vary a lot.
The environment/context for those testers and devs can vary a lot.
Developers can have a varying understanding of the exploratory testing.

Generally to help them, yourself, the product, the stakeholders…you have to excel at things, and impress them.
With some you make that impression in a few weeks. With others it takes months.

Since all testing is exploratory, you can reverse engineer their testing thinking process and show it’s already an exploratory activity.