All posts by Mindful tester

Test Creativity, Inc.

Using the book ‘Creativity Inc.’ as a basis for this blog post, I made a mistake. I tried to craft a compelling story, how creativity could be used in every phase of software testing. But the post became a struggle for me. Then I realised that the book was not about creativity or management. It was about leadership. Let me write about it.

Learn, Struggle, and Tell

During one of my workshops about mind mapping I talked with a colleague, who was specialised in project support. She told me, that she already had been taught mind mapping during her master class. She was quite proud about the nice mind map as a deliverable of one master class group project. She described the beautiful details, but I sensed some reluctance to use mind maps for her daily work.

One of my kids had to give a talk. In the US it is called Show and Tell. An object is shown to the class and the pupil tells about it. The teacher of my kid would give a penalty, if no mind map could be shown.

Where’s the fun?

Flow and Tell

What I like about mind maps, is that they are playful in use. I can get in a flow, during which I can add and modify information in a continuous way. I can focus and defocus. With a single delete action I can remove a complete subtree of information.

A mind map makes a TODO list more interactive than a standard checklist. I can make sub tasks and move them around. It shows me, which things need my immediate attention.

This is useful fun for me.

Use and Tell

Years ago I used to work for a consultancy firm. This company had a special program for consultants between projects. One of the workshops was Introduction Mind Mapping, which appealed to me as a knowledge worker. The reasons to attend my workshop were different:

  • “I am curious, what mind mapping is.”
  • “I heard good stories about this workshop.”
  • “It might be useful for my work.”

During the years it became a feel good workshop. I found the right mix between practice and entertaining stories.

In order to maintain the quality of the workshops I was requested to collect filled in evaluation forms. Once I even scored a 10 for the whole workshop on scale from 1 to 10. You guessed right: 10 is perfect. For Dutch people this is quite exceptional. Most of the time I scored 8 or 9, which is good.

The feedback about the use of mind maps after the workshop was quite limited. One consultant used a mind map in a presentation, which I attended.

Another consultant had a long call with me to look at the use of mind maps as a vehicle for knowledge management. And there were a few more.

Show and Provide

There was not enough time to make a test plan. My project manager was quite strict: you have to do your job with the available resources. So I asked my project lead to use a mind map. The reaction was like “Sure, why not?”
I confirmed my request:
“You won’t get [word processor] doc, but a mind map.”
“That’s no problem.” she answered with a smile.

I went back to my computer and made one of the most compact test plans ever. I mailed the plan to her and started playing the theme of Mission Impossible in my head. I succeeded.

Later I heard that the plan was converted to a document. This was not entirely my intention.

Show them & They Tell me

Another time another mind map. This time I presented the test plan mind map to the stakeholders. It was scrutinised and becoming better after each feedback. Weeks later I requested information from a colleague, she answered with:
“I looked to your mind map and […]”.
Just imagine that smile on my face.

A few weeks later I got questions from another colleague. I opened my mind map and talked about the options. It was highly constructive. Test ideas were reframed with new facts and questions. The focus was on the content and not on the form.

There’s No Business like Show Business

There are many people, who already use mind maps like me. So my creativity is not that high. The use of test plans for management is standard in many companies. But the constructive discussion about the tests to be executed was quite unique for me. My test plan mind map was discussed, adjusted, and used to give a direction.

Am I a leader, because people follow me? Maybe they are chatting and not paying real attention. Maybe I am a leader when I tell the right direction in the back of the group. But they might follow another group or be led by some else in the group.

Real leadership is granted and not imposed.

A Delegate Report about TestNet Spring Event 2016

There are some main stream test events, which I cannot ignore. I just need to be there. Enter TestNet Spring Event 2016.

The Dutch Special interest Group in Software Testing, TestNet, had another free congress for his members: workshops, lectures, meals, etc. from 9 am to 10 pm. All for a yearly contribution under 90 Euro, which also includes an Autumn Event, peer meetings, and a congress with sponsored workshops. Did I mention the working parties?
It’s not cheap, it’s good.

Disclosure: I confess that I was a board member of this SIG, your honour.

5 lifehacks in a beginning scrum team

Eric van der Marck was called a first time speaker, who took his listeners with him on his journey through the scrum world. He talked his encounters with end users. He started to walk like a cowboy: “They are wearing a can of pepper spray and a gun.”

In order to illustrate his points he had nice examples with lots of interactions with the attendees. Pairing was useful even with different roles. He asked a programmer during a review about the code. He knew that he would ask irrelevant questions. And still there were some moments of hesitation and insight from the programmer’s side.

He also worked for a Police project. The agents needed a handheld device, which could be used in a simple way. My first reaction was unbelief, until he explained the context. If an agent talks to a possibly dangerous person, he /she wants to watch the person all the time. The same with a victim.

Eric had a preference for good documentation. Not only for the dreaded audit, but also for helping team members. An attendee asked why the documentation was not in the code. Eric responded that the documentation was also used by end users. Then he described the reaction of an agent looking at code.
“The moment I show him code I lose him. [Silence of 3 seconds]
They are smart. [Silence of 1 second]
In other way.”

With all kind of tools available he described, what happened, when test cases are attached to Jira tickets.
“For a regression test you have to browse through all these tickets.”
A rather unpleasant task indeed.
He advocated Confluence for test case administration and Gliffy, an add on for Confluence, to make process flows in order to track the test coverage.

Eric ended the story with coaching. How to make people better scrum members.

Agile Testing Survival Guide

Ingo Philip is an employee of a test tool supplier. I groaned inside. I was sitting in the front row and suppressed my urge to flee to another session. Ingo promised, that he would not mention his company again. I relaxed a bit.

Ingo remarked that there were redundant test cases. The basic cause is user stories, which might have overlapping acceptance criteria. These had corresponding test cases in turn. So he suggested to consider functionality grouped test cases. While blogging I started to miss a process flow test or data flow test.

Next he suggested to look at patterns in the past. Risk analysis was a helpful tool. For each feature good risk coverage should be obtained during testing. In an example some features had risk coverage of 50 %. Nice for statistics, but pretty abstract for me. Then I added all risk coverages of the features and got a result over 100%.

That was the moment to raise my arm for a clarification. Ingo noticed me and delayed the question to the Q & A section.

Heading towards the wall he described how test cases could be weighted using information from the past. He turned the steering wheel a bit by pointing out that deviations could not be predicted. Then unexpectedly he mentioned Exploratory Testing as a good supplement for test cases. ET could address unseen or other risks than test cases. Just missed the wall by a few nanometres.

In the last part of the talk Ingo described a case about a regression test: test case reduction using the previously described method including the risk coverage, automatic test data generation, automated tests in several forms and frequencies. I recognised a pattern of another talk: determine a small set, which can be used for a fastback feedback, and distribute the tests over several servers to reduce the execution time.

At the end I finally got a chance to ask about risk coverage. I picked up factors like frequency and potential damage, then the facilitator stopped the explanation. Ingo gave me an invitation to go to the booth for more information. But I came for the talk. His talk.

So
time to leave the premises. A few things to mulch about. Or blog about.

Free Gift as a Service

A few months ago Jokin Aspaziu gave a gift to the Test Community. He added Spanish subtitles to an online video. Testinsane.com is doing the same with a big set of mind maps. On a Saturday someone placed a question on a forum about a checklist for testing. I just referred to this big set of mind maps.

So here is my gift, which costed me more than 100 hours of work in my free time (and another 4 hours for blogging this). I am sharing this for free by giving multiple views on a software test exercise. After all it is my way to put my thoughts on the web.

The exercise

[Preparation teacher:
Explore the program extensively yourself before using the exercise.
Be sure, that there are enough smartphones and laptops plus wifi for the exercise.]

“You have to test a multiplication. You have 5 minutes to prepare. I am the PO or Product Owner. You can ask me any question.”

[My observations for this and similar exercises:
Two things can happen:

  1. Attendees are writing a lot of test cases.
  2. Attendees ask a lot of questions.

FAQ teacher
Q: why do we need to test a multiplication?
A: this is written in a new programming language.

Q: what can be multiplied?
A: all kind of numbers.

Q: are real numbers supported?
A: yes.

Some advices:

  • Give only information, when asked.
  • Act, if you know everything.
  • Tell a consistent story.]

[After the five minutes]
“What are you going to do?”
Or “What did you find out?”

[In case of silence or answers about test cases you can ask the attendees:

  • What is your mission?
  • What are you going to test?
  • What are the priorities in testing?
  • Etc.]

“You have 10 minutes to test the application. Here is the link to the application: 2015.mindfultester.com/test_this.html”

[Additional information:
Give only information when asked.

Depending on the purpose of the context of the exercise you can encourage people to make notes.

In the past there were several reasons why I had to part from my smartphone:

  • [Update] In the past tt did not operate on an iPhone. Since 2020 this is not a problem any more.
  • The battery of an attendee’s phone is low.]

[After 10 minutes of testing]
“Time is over. I want you to form pairs and debrief each other.”

[In case of uneven number of attendees let one attendee debrief to you.]

After the debriefing
“What were your experiences?”

[If people continue to talk about bugs, you can ask about exploring or notes. Did you accomplish your mission?

Other question:
“I was the PO. Why did you not ask me about [program]?”]

A workshop

The reader is of course advised to embed the exercise in a workshop. A good example is note taking during testing as subject. What must be noted during testing?

The first part could be focused on personal experiences and information from bug registration tools. An overhead projector can be used to show some notes as used in practice.
Let people voice their opinions and let them discuss the options.

In the second part theory could be presented like ET templates. ET is short for Exploratory Testing and not for a cute little stranded traveller looking for a roof and candy.

The last part is the exercise. As described above.

Tooling

I was looking for a way to engage all attendees at the same time. It would be great, if they could do the exercise at their own pace. Not everyone has a laptop, but smartphones are quite common these days.

So I wanted to have a tool to make an app for mobile phones. The development environment and deployment of the application for workshop should be free and it should be able to support more than 20 attendees at the same time. Hum, these sentences sound like requirements.

I looked to different tools. There were a lot of cloud based tools, but they had restrictions on users or mobile platforms. Also had time consuming pitfalls like learning to code. I try to avoid proprietary code.

Then I noticed Twine. This tool had a similar interface of a CMS or Content Management System for web sites. It was free and simple to use. Twine is used to tell a story with branches. So I could add several happy endings. Or in the case of a bug a bad ending.
It can even be used for a RPG or Role Playing Game: please enter the room. Hit the baddies and take the loot. Cheers. Have another healing potion. Rinse & repeat.

Then the painful embedding of Twine html in my web site started. It looked bad. Some forums did not have proper information, so I had to place it outside this blog space.

But I had still more than enough Mb left over in my hosting space. So I cruised through my personal Command and Control Centre of my hosting provider and discovered that I could use subdomains. That sounded pretty cool. 2015.mindfultester.com was born.

The next step was to move the file to the internet. I used ftp. Very primitive, but good enough.

Another speed limit was imposed by the awkward URL. That is a lot of typing. On Twitter I discovered, that bit.ly is used frequently. It reduced the number of characters to be entered after the slash to a reasonable digit. I looked on the web site. It was free. What was the business model? Marketing could use the information of the click behaviour. Rather useful for keeping tracks of campaigns. Only this information would cost money.

A similar tool is the QR code. The user needs a QR reader or a photo to URL converter on his smartphone. On the Internet I found several QR code generators for free use.

Programming

The difficulty with bugs is, that they are small and sometimes hard to detect. With a high reproducibility bug reports I had to investigate a lot. The consequence was that programmers got a reproduction path with more than 10 steps. From me.

My basic idea was to make a calculator with buttons for digits and a lot more. I first tried a rough version to explore the possibilities; it worked and I was happy for a short time. A calculator lookalike would cost me lots of work, so I skipped it. So the prototype slowly evolved in the program of the featured exercise.

How would I be able to keep track of the right state of the program? A state transition diagram offered a simple way to design it. Then a new proof of concept or PoC was needed to verify, whether I could program it. Then I PoCed again and again.

My auto generated html file looked good on a desktop. There were some drawbacks on a mobile phone: small characters and difficult to manoeuvre. So I added some space to handle big finger tips.

History

In 2014 I was invited to give a 2 hour workshop for the Let’s Test conference. In the last years I had developed a strong preference for a work and learn experience. So I wanted to have some exercises, which could be done by the participants. The featured exercise is one of the three.

When I read the blog posts of previous conferences, I noticed a pattern. Surprisingly not every tester at this context driven test conference was extrovert. So the exercises should be done by introvert testers. At their own pace in their own Circle of Comfort.
Then I used all my humour to convince them to come to my workshop.

On the first day of the test conference I met a shy tester. She was looking for an interesting talk or workshop. I suppressed the urge to mention my workshop. This would not be consistent with my blog post and invitation for introvert testers.

In hindsight the exercise was out of place. With all the hours spent I did not consider to drop it. What were the bad signs?

  • I flipped through the slides, until I discovered that I had to do two exercises in succession. So there was no good mental hook for this exercise.
  • The exercise was linked to the message: little tricks lead to nice combinations. Were the actions of the attendees really tricks? On a high level of abstraction maybe.
  • I ran over my 45 minutes limit with 100 %. The exercise was one of the causes of this time expenditure.

Another observation was, that the QR code and bit.ly did not accelerate the start of the actual testing.

Related posts

For the testing of this exercise I used different people.

My last upload before my workshop was for me another exercise in exploration. The actual exercise was not completely smooth.

Just for fun

Why is it not possible to explore outside the domain of software testing and make decent notes?
And make a smile on the face of the reader?
Just by breaking a bike lock.

Special mentions

The one, who inspired to write this blog post, is Matthew Middleton. He asked a puzzle for testing on a forum.

In order to get so many views on the exercise I used a variation of the Rule of Three. This rule basically states, that there are at least three questions to be asked. Why not views?

Have another one. Take a health potion mind map.

Mindmap of this blog post

Hit the baddies road and take the loot exercise. Cheers.

I want to thank Michael Bolton for experiencing his calculator exercise. Thanks for Carsten Feilberg for his workshop about Exploratory Testing at Tasting Let’s Test NL. Also thanks for Elisabeth Hendrickson for writing about her experiences with ET and Jean Paul Varwijk for putting ET templates on line (arborosa.org). And finally special thanks for Ray Oei for making me rethink testing.

Afterthought

I can make a test scenario with 100 % coverage of the shown tests and only good positives. Some might call it checking.

I can make a test scenario with more variations in state transitions, which leads to some good negatives. Some might call it testing.

Some people would love to automate tests.