My team currently has more than 20 programmers, and two testers. One of those testers is also the testing and support manager, and I also help with support. In terms of the quintessential “tester-developer ratio”, that sounds a bit dire. But we take a whole-team approach. The programmers pair all the time, they are excellent TDD practitioners. We’re using practices such as example mapping to build shared understanding of stories. And we’re now using behavior-driven development (BDD) to ensure each story meets acceptance criteria. On top of all that, developers are starting to do more exploring on each story before they mark it ready for acceptance.
If I can help my teammates learn more exploratory testing skills, it helps me focus on exploring on the feature level. We already do group exploratory testing sessions, called “group hugs”, and we’ve experimented a bit with exploratory testing in a format similar to mob programming. I’m keen to find more ways to transfer exploratory testing skills across the team.
Tech Talk Wednesday
Every Wednesday, our company has lunch catered for everyone to eat while learning something from a fellow employee giving a “tech talk”. I added myself to the schedule to do an exploratory testing workshop. On the day, a number of developers – mostly in my own team, but some from other teams in our office – enjoying a delicious catered lunch participated. Many of them were familiar with exploratory testing, although nobody had read Elisabeth Hendrickson‘s Explore It! book.
I started off with a quick overview of the purpose of exploratory testing and how charters can help. I went over a few example charters based on the template Elisabeth uses in her book.
I asked participants to pair up, group up or mob. Each pair or group chose from the assortment of hand-held toys or other things such as a collapsible vase I had available to test. I asked them to come up with a charter, explore, and debrief. Each table was supplied with a copy of Elisabeth Hendrickson’s Test Heuristics Cheat Sheet.
Creative exploring ensued. I got the biggest laugh watching a pair testing battery-powered “nano bugs”. I had scissors available to open packages. This pair picked up the scissors and started cutting legs off the bugs to explore how they worked with fewer legs. They determined that they worked fine with only two legs instead of eight. No legs wasn’t good, though they made a sort of wheelchair with the product packaging. One of the devs said “Normally I wouldn’t damage something, but being a tester made me willing to try cutting the legs off.” (Mind you, I supplied very inexpensive little toys, so it was fine to “stress test” them). They created various surfaces and enclosures to test the nano bug performance.
A team with a puzzle toy wrote a charter to see if it was fun for an eight year old. They found it hard to figure out which puzzle was easiest to do first – the one they picked first turned out to be the trickiest. The small pieces would be easily lost. And there were only six puzzles, so it would get boring. Maybe not so great for the eight year old.
Other teams with different toys tried different perspectives. One played Kanoodle as a person with unsteady hands who was color blind. Not a great experience for that persona. One played with a maze game as a very strong but elderly person – it proved durable. The most potential for the maze game was losing the stylus, but it could easily be played with a pen instead.
For me the most fun thing to test was the collapsible vase, an idea I got from Lanette Creamer. The team testing it wanted to see how much water was required to make it stable enough that a cat brushing against it couldn’t tip it over. They found it remarkably cat-resistant.
The developers said they thought charters would be helpful for exploring a story before they marked it finished. They particularly liked testing in a group, saying it generated far more ideas than they would have thought of individually. I was pleased with the general feeling that participants got ideas that would help them exploring the features they develop.