Mind map instead of test case, or How visualization allows you to test the application faster
Hello! My name is Kate, and I have been working as a mobile application tester for over five years. For the last three years, I have been working in the Badoo iOS team, and weekly we will release from three to seven new features, from three to five technical tasks and from five to 13 bug fixes. As you understand, the application is changing at such a rate that it is inefficient to maintain the classic test documentation (test cases): it will almost always be outdated.
Experienced, we found out that checklists as test documentation work better because they are easier to create and use. However, sometimes they can be confusing and too detailed, especially when there is literally a couple of hours of exploratory testing features that should get into the next release.
In this case, the visualization saves a lot of time, so we decided to try using mind maps (or “mental maps”), which are as convenient to use as checklists, but more visual due to the visual format.
Today, we will examine in detail the mind map I created for testing an iOS application (hereinafter referred to as “my darling”), and also look at the resources that can be used when constructing a mind map for a mobile application to cover the maximum number of important scenarios.
What to make mind map
Let's look at the structure of "my charms."
As you can see below, all ideas for testing are divided into ten main categories, each of which has many branches:
Functionality
This category is the most voluminous. It is important to make sure that your feature / product works as it should. I included the following checks into this category:
User interface
The “User Interface” category is extremely important, because its user loyalty and product success depend on how the user interacts with the application. Here I suggest checking the following points:
Navigation
Imagine that you received a push-notification "You liked a few people." Open it - and get stuck on the page "We have updated the privacy policy", which can not be closed. You try it this way and that - curiously, who liked you there - but in vain, the vile screen does not disappear. To avoid such cases, it is necessary to test the navigation:
Payments
To paraphrase a classic, I will say: " Test payments as if your personal income depends on it."
Statistics
In the harsh era of the A / B tests, the data science team decides whether the feature was successful. Therefore, it is very important that the statistics you send is accurate.
Network
When testing a mobile application in a cozy office with good Wi-Fi, it is important to remember that people may want to use the application in an elevator, public transport and other places where the signal quality may be worse. And any application must adequately respond to a network change. I suggest to check the following:
Automation
If you have autotests, use them (thanks, Cap).
Cross-platform checks
If the feature you are testing, for example, in an iOS application, is already implemented on a different platform (say, Android), then make sure that the behavior is consistent. And do not miss the opportunity to avoid the bugs faced by testers of another platform.
Communication
Here I recommend to clarify the requirements and make sure that all interested parties are satisfied with the product / features.
Mysterious category "Other"
In the finished form, "my darling" looks like this:
A more readable PDF-version can be found at this link .
Where to look for inspiration and how to visualize
If such a mind map is suitable for testing your application, take it away. And to create a custom mental map, I would advise you to take a few simple steps:
1. Start from the center - set an idea, this can be the name of both a feature and a whole project.
2. Find as many ideas related to the project as possible:
- Independent brainstorming. Try to write down all the testing ideas that come to your mind. At this stage, they can be large or small, use different testing methodologies, relate to different types of testing, and most importantly - based on your personal experience and be important from your point of view.
- Attract colleagues. Ask colleagues to help with ideas, because one head is good and two is better! All QA engineers are different: someone is more technical, someone is more picky about the UI; and when people with knowledge in different areas exchange ideas, they gain useful experience and new knowledge.
- The Internet. I recommend to look at the following sites to add to the list of ideas:
- www.ministryoftesting.com , and I especially like their iOS testing mind map — a good example of basic iOS testing ideas. MindMap - Heuristic Testing Strategy Model contains many questions that will be useful for successful end-to-end testing.
- www.testingdiaries.com , I find their Mobile Testing Checklist useful because important checks are indicated in the form of the expected result and show how the ideal mobile application should look like.
- Classical mnemonics on mobile testing: COP FLUNG GUN and LONG FUN CUP (describe the basic features of mobile testing and are very similar in ideas),I SLICED UP FUN - similar to the first two, but more balanced, and SFDPOT , which forms test ideas in the form of questions.
- Books: Hands-On Mobile App Testing: A Guide for Mobile Testers and Anyone Involved in the Mobile App Business - here the tools and the technical part of non-functional testing of mobile applications are revealed, and Tap Into Mobile Application Testing provides a good basis for testing applications, explaining what is important to pay attention to and why.
3. Filter ideas. There will be many, some will be repeated. Feel free to throw away too much.
Choose a name. Next you need to come up with good names for ideas. Short and neat will look much better than long and tangled. In addition, they will be easier to find in the future.
4. Divide and conquer. After working through the list, you need to categorize your ideas using any classification that you find most accurate, for example, by application area, test types, etc. As a result, you will receive a list divided into sections.
5. Visualize. Visualization is one of the most important aspects of the mind map. The scheme should be easy and quick to read (we are creating the right solution for this, right?). There are many applications for creating a mind map. I used trial version https://simplemind.eu , but I can recommend others:
https://coggle.it/
http://www.mindmaple.com/
http://blumind.org/
www.text2mindmap.com
http://wisemapping.com/
And some more useful tips:
- try to create one chart element for one test;
- sublevels look better than long elements;
- use the free application, and not trial version of the paid one; or immediately choose the one that you like best, otherwise when you decide to correct the diagram, you will have to pay.
And in the end I will tell
Mind map is a very useful thing that allows you to quickly and efficiently test the application, as well as refresh the checks for which often do not have enough time.
In my case, using the mind map increased the speed of testing features by an average of 5–15% (compared to checklists).
I hope this article will inspire you to create your own useful mind map masterpiece. I'm sure you will benefit from both the creation of the mental map and the use. Thanks for attention!
There are checks that I didn’t include in the mind map due to the out-of-date status of the Badoo. And what specific ideas for testing would you add to your application?