As testers, we usually use a large variety of tools in order to do our job efficiently, whether they’re native apps, browser extensions or web applications. This is due to the fact that testing activities don’t always follow a strict pattern or ‘best practices’. To excel in our job, we need a certain level of creativity and imagination.

Repeating the same patterns won’t help us in discovering and isolating new bugs. Eventually, we’ll reach a point of stagnation, resulting in a monotonous and repetitive job.

The tools that we use

We all are aware of the fact that the software industry that becomes more competitive, advanced and is rapidly changing. The need for tools that help the implementation of quality software was obvious. Because we select testing tools primarily based on project requirements and financial considerations, certain reference tools for each testing type will remain irreplaceable in the near future.

In performance testing for example, an indispensable application would be jMeter. Of course, there are numerous alternatives, both paid and free. However, this tool can cover most performance testing scenarios, eliminating the immediate necessity to seek something better. Another reference name would be Selenium Webdriver. It is the most used testing framework for automating web application tests since it’s compatible with most browsers and operating systems (for now).

New tools emerge daily for other testing types or included activities, with some showing real promise in simplifying our tasks.

Below i have compiled a list of resources which could be a reference for various activities here.

A bit about mind maps

As you’ve probably noticed in the link above, the resources were not presented in the form of a list or excel table. The arborescent structure in which I organised all those resources is actually called a mind map.

So, what is a mind map? Plainly put, it is a diagram used to visually organize information. Its main characteristic is that it’s hierarchical, starting from a center point, a subject/topic, and branching out in multiple directions until all ideas regarding that topic are expressed. A mind map is also relational as it connects various pieces of the whole and establishes connections between them.

Organizing our testing ideas through mind maps

So why use mind maps in testing? I first got the idea of using mind maps from James Bach after I attended one of his lectures in 2015. He mentioned that, in a context where he is asked to test a certain product, usually ideas and approaches come overflowing and mind maps help him organize and attain a high-test coverage.

This means that, initially, mind maps can document test ideas for new products or application features. You can create a test strategy by assembling ideas that articulate your testing vision to the team and stakeholders. For a test strategy, the map’s center is the project name, with test strategy aspects as branches and sub-branches extending from it. I’ve taken from James Bach and Michael Boltons book, ‘Rapid Software Testing’ a set of heuristics for a testing strategy and compiled them into the mind map here.

Also, most modern mind mapping tools like Mindmeister offer the possibility of collaboration. This means that maps can facilitate brainstorming sessions, generating valuable results and ideas beyond individual thinking.

Creating diagrams and flowcharts is also feasible with mind maps. This means that, if necessary, the tester and the team can collaborate and craft a map for user flows and user scenarios for a specific feature before implementing it. In my opinion, this approach reduces the total time for implementing, testing, and bug fixing (for a certain new feature). By openly discussing the feature before implementation, testers acquire extra information about the upcoming implementation, potentially facilitating testing. Similarly, developers gain insight into testers’ approaches, aiding them in addressing.

Test case management using mind maps

Test cases can easily be included in a mind map since the maps are usually easy to maintain and changing requirements will be represented without any difficulty. I suggest drawing branches to each epic or user story and associating corresponding functionalities as sub-branches. Then you can add test cases under each functionality. I used a similar approach for creating an integration test for the application I was working on. We kept the map updated and maintained, running integration tests across various flows before deploying to the live environment. We would add a corresponding image for PASS or FAIL to each flow and the entire team had access to the map so they could see real time if our tests were passing and everything was all right. You can view a sample of this mind map here.

On a final note, you can find a large library of mind maps which represent different areas of testing here and here.

Final note

The tasks I’ve talked about above, sometimes involve using more creative alternatives than reference software like excel or word. Mind maps can help us organize, gain clarity and improve certain aspects of our testing job.

There are plenty of mind mapping tools out there (like xMind, FeeMind, XMind, MindMapper etc), free and paid, each with their own sets of unique features. For the mind maps in this article, I used Mindmeister. It offers free and premium subscriptions, is user-friendly, and provides a variety of useful features. However, if this tool doesn’t meet your needs, there are plenty of other alternatives available.

 

 

Article written by Dragos Campean

The article was originally published here.