Recipe For Creating Bug Taxonomy — Tentamen Software Testing Blog


In the last post, we described an example of a process that generates test ideas based on a CRUD bug taxonomy. The idea was from this excellent paper: Bug Taxonomies: Use Them to Generate Better Tests [Vijayaraghavan, Kaner]. Many thanks to Marcel, who sublimed this great resource on his blog, That’s the buffet table.

Meta Rule

Cem Kaner summarizes the meta-rule for elements of a bug taxonomy:

“The goal is to find a nugget that will arise under a wide enough range of circumstances that it is worth including in the list.”

The tester needs to decide what is wide enough based on the context of the application under test.

Context Is A King

To determine wide enough, we first need to determine the application context. The divide and conquer strategy should be applied.

Identify a feature that needs to be tested.

Each feature consists of several functions:

Identify functions that make a feature.

Having functions as our context, identify the list of risks related to those functions. Risk is any outcome of a function that is not desirable. You could use Bach’s Heuristic Test Strategy Model in creating a list of risks.

Cluster risks into primary and secondary categories as a whole team.

When you run out of ideas, it is time to consult Github open source projects.

Use Github’s advanced search to find open source projects in the context of your application under test.

For example, for Invoice keyword, I found the Invoice Ninja project that currently has 667 open issues. Now you can browse through the Issues page to get fresh risk-related test ideas.

Originally published at on December 30, 2020.



Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store
Karlo Smid

Karlo Smid

Founder of Tentamen, software testing agency.