Showing posts with label mind maps. Show all posts
Showing posts with label mind maps. Show all posts

Tuesday, August 7, 2012

Why not to create Test Documentation


Before you read further, I would like you to do a small exercise. For each product/release that you have tested, calculate an approximate number for,
  1. Total no of Test documents you have written till date.
  2. Total no of test cases you've written.
  3. If it takes 5 minutes to write one test case along with the scripts, then total time consumed?
  4. Last time the scripts were updated



Once you are over the excitement of the numbers that you see in front of yourself and for those who could imagine how large the number would be and didn’t bother to calculate, answer yourself, what usually happens when the product/feature is released?

Usually, important/happy cases are documented in the regression pack, which is usually automated in many cases. From then onwards, the feature test documentation is not used anymore. Then why do we spend so much time on it? Let me try to answer this.

  • The most obvious reason is that the management has asked us to do so because the piece of documentation is getting the company money or “billing the client”. We all like to earn money but is that the end goal?
  • We might be writing it because this is what testers have been doing for past so many years. The problem with this is that no one questions what they’re doing and gladly accept what they have been taught by their seniors.



What do we usually achieve when we try to follow the above process?

  1. Missed Deadlines because we were so busy writing test scripts and getting them reviewed from the customer that we forgot to test the product
  2. Heated discussion with the developers regarding why they did not mention it in the FSD in the first place?
  3. A Buggy product
  4. An unhappy end user and customer


If the above points doesn’t seem so convincing to you, then ask yourself, “Do I like to write test documentation?” If your answer is still Yes, then I hope god is with the product that you have tested. 


What could you do instead of wasting time in test documentation?
  • Take time in understanding the requirements. Create a mind map.
  • Have a question & answer round with the requirements analyst.
  • Have a debate with the Developers
  • Test to explore the product. Yes, I clearly meant to say, practice exploratory testing.


I don’t have a goal to change the world, but if you are passionate about testing and want to test the product instead of wasting your time in writing how to test the product, then do think about it.



Tuesday, November 22, 2011

How Not to Test


For the past 3-4 months I have been bombarded with new functionalities to test. I have been asked to create test cases, write test scripts and also execute them. My focus is on the test execution part. Writing Test cases and test scripts deserve independent space.

Test execution is the process of the following test scripts. Yikes, doesn’t sound interesting and also not cool. Following steps, seriously? Why on earth would I want to follow the scripts I wrote? I’m better off without them or in fact any tester is better off without scripts. That‘s why I didn’t do it. Testing is an intriguing process and should be left so.

I was very excited for the build to arrive and start off with the testing. Finally it arrived and the next thing that happened was a pure learning experience for me as a tester. 

I got over excited and started to test everything and I mean everything, in the first couple of days.

I was testing everything but it was all ad hoc. It was like starting from Z, going to E, back to Z, then to A and so on. There was no sequence. This did not mean that I was not finding bugs, I was. Then where was the problem? The problem came when I scrutinized the bugs that were raised. The bugs were found while executing complex scenarios. There was not a single use case or test case of low complexity that had been tested. This is not right. This is not how you should approach early testing.

A tester needs to first understand the system that he/she is going to test. Do a tour of the functionality, get to understand what the developers are trying to achieve and what the stakeholders actually desire. 

Keeping this in mind, I've started created mind maps. These mind mapping tools help you to organise your thought aka map the understanding that is going on in your brain.

Once you’ve created mind maps, the next thing would be analyse the mind maps and then design your tests. Not only this would help in better understanding of the functionality but will also help you in better analysis and consequently better tests. (Read Cem Kaner's slide on Function Testing in BBST Course.)

To conclude, don’t be over excited when testing. Use the excitement constructively and then test.


PS: Over-excitement is one of the ways of not approaching to testing. There are plenty of others which I will definitely post once I experience them.