Thumb Rule for Writing Good Test Cases

Get Feedback

Say you are in a restaurant and having your dinner. After your meal ends you asked for bill. Waiter brings you your bill along with Feedback form. This form contains several questions asking you about quality of food /ambiance / service etc.

Now, this is the human psychology, whenever we judge anything we always try and compare the stuff, either with one of our past experience or on basis of somebody’s reference. Along with that one more thing which matters a lot, that the person who is making this decision; is he/she enough capable to judge it correctly? As there might be a person who is experiencing the cuisine for first time or he/she might have been tasted such stuff a couple of times in past or the person is having a complete knowledge of how the stuff works actually.

Based on knowledge of every individual and the feedback they have shared, helps in restaurant management to figure out the best out of it.

Now coming back to the real business, same case applied to every industry which provides any sort of services or having any product running into the market. And the person/ user who is using these services or products is not less than a real time tester. Who actually knows what is best for them and what improvements the product required to let it retain in an emerging market like India, where every other individual is trying to sell their products in the market.

As far as Software Industry or I can say E-industry is concern, this is the duty of every individual starting from Product Owner to BA to Production Leads to QA, that everybody should have a clear view of what they are building and what type of user base is going to use their application.

On digging down further, the real gatekeeper for the application is QA / Software Testers. Who gives a final sign-off and let open the gates for product and let it to be sold in market. They are the one who are primarily responsible for facing any consequences, in case of any defect arises on production server or any new change is requested by users.

Though it’s a tough task to read every individual’s mindset, who so ever is using their application, but a tester should always think like an end user, while working on their test environment.

Thinking like an end user

Thinking like an end user everytime and that’s when the customer base is huge and with various Age groups. Urrgghhhh… How can we perform testing keeping every individual’s mindset during testing? How ?


Alright, that’s two-time How, which somehow doesn’t changes the severity of the process. So I have got some good news for you. Yes, it is possible by doing some very small mathematics and a bit of analysis.

As mentioned above that there is always a certain age group of users, who uses these application or the product we developed. This totally depends on what kind of application we are selling in market.

Say if this is an e-commerce website, to which user age can ranges in between 10 – 70 yrs. So for this we can assume a big size user base.

Now, let’s do some mathematics first. Let’s make various ranges which covers every age group users.

For e.g.

  • Teenage : 10 – 19.
  • Young Adults : 20-39
  • Middle Aged : 40-59
  • Senior Citizen : >60  

Now the Analysis part. In this we need to make some possible and real time assumptions based on our own experience along-with inputs received from Product Owner. For e.g.

Teenage : 10 – 19

possibility that maximum no.

In this age group there might be a possibility that maximum no. of kids would have started using internet and any website for first time. They could experience some issues related to ease of usage, reliability of website or website crash, as they are probably using for first time or even if they have used it earlier, they are not having a complete knowledge of each and every button or link available. These kind of users can be named as Exploratory Testers, who try to explore the application with a curiosity.


Young Adults : 20 – 39

majority of users have experienced a good set of knowledge

Assuming that this is an age group where majority of users have experienced a good set of knowledge, for the application they are using or might have experienced almost similar stuff earlier also. In this we can check the feasibility of application along with UI experience and overall functionality. As they would be the one who can trace out the real time issues with overall health of the application. These kind of users can be named as Functional and GUI Testers.


Middle Aged : 40-59

This is an age, in which probably a maximum no. of users don’t love to explore much. They have their priorities set for what they actually need. In this case they might face some issues regarding the usability for any specific module. These kind of users can be named as Unit Level Testers.

Senior Citizen : Above 60

limited knowledge

For senior citizen. Most of them have a limited knowledge to how to use an application, probably when they were young, e-commerce or software related markets were not in to the picture. In result of which, there might be a case when the issues led to some sort of load or stress situation, which finally led to app crash too. These can be called as Real Time Load or Stress Testers. There is a saying that no difference is left between an old lad and a small kid. They love to do what they want to(in some manner), ir-respect of their results/consequences.

I can assure you, by using the above approach, one can easily attain the Maximum Coverage of application.

I know every tester knows(if he/she has ever got a chance to write test cases) to how to write a test case and knows their format too. But I’ve seen people, who by the time got experience in their profile, don’t intent to follow the complete format. For e.g. There is a column of Pre-requisite or Pre-condition, which is required to know what sort of environment is set prior to running the following test case. Most of the time testers don’t mentioned it in their test cases. Which sometime becomes difficult to track if any issue occurs.

Thumb Rule for Writing Good Test Cases

Remember, things which actually matter or can make any difference, comes in very small size. The only thing on which one have to work is “to figure out such scenarios”. Always try to include such instances, which might have a low probability of occurrence. Coz you never know, you can have a chance to party after that.

Thanks for reading it.


You might also like