• info@helpingtesters.com
  • helpingtesters

How children can help us become better Testers

May 9, 2018

Software testing is the art of ensuring the quality of a software application by unveiling vulnerabilities and detecting loopholes present in the system. To test an application, us testers normally refer the requirement document to verify whether the application adheres to the requirements. But while detecting loopholes, testers perform negative testing and resort to any and all means to break the application by performing different actions on the application. Another way of putting it is, testers need to stop playing by the rules and perform gorilla testing to find any underlying issues. 

And there can be no better contender for breaking the rules than children. And this very trait can help us learn a few things from the children. In this post, we would talk about different habits of children and a few experiences which can guide us to become better testers.

Common behaviors of children and how it can be applied in testing

Children of certain age group radiate distinct behavior. Apart from their frequent tantrums and throwing things around, we can actually learn a lot from their behavior and apply them in our testing practices.

According to an excerpt from Business Insider, “Kids don’t wait until science suggests they’re ready to remove the training wheels on their bike – they just hop on and see what happens.” Now, if we put such tendencies which are generally seen among kids into testing, what behavior can we expect?

Not being concerned about the end goal – Kids don’t worry about the end goal. They just want to have fun. While playing a sport, with a toy, or just with a puzzle, they are least concerned about finishing the game. They just want to explore and make the best out of anything they have in their hand.

  • Not worrying much about the restrictions – They worry very less about the restrictions. Even if you tell them not to touch any household item or stay put in a designated area, they are most likely to circumvent your guidelines.
  • Repeating actions frequently – If they find something to be fun, or are unable to make out what the purpose of the item they are handling, they keep on doing different actions, until it makes sense. Kids will handle a toy or puzzle differently and repeatedly until they find out what its purpose is.
  • Keen observation – Kids are great imitators and can pick up habits and gestures very quickly. This happens because they are very keen observers. According to a post from Parentlane, “With their advanced cognitive skills, kids this age are keen observers and very inquisitive. They want to learn about everything around them. Things that you would not even notice, your child will observe and want to know about it”. The most practical example being how kids handle smartphones. Adults or parents never tell them how to unlock a phone or start an app. They notice their parents how they are using the mobile and what actions they are performing. They keep noticing the steps and try to imitate the same actions. Once they have tried and failed, they do get the right way to unlock and use the phone.
  • Asking questions over and over again – Another common trait among children is curiosity. If anything bugs them they keep on asking the question over and over again until they are satisfied with the reply. Even when adults reply back with an answer they carry forward with their questioning if the response doesn’t satisfy them.

How can such habits help in testing?

The above-mentioned behaviors are most prevalent among kids. But how can such practices improve quality of testing?

  • Less chance of defect leakage – The key lies in repetitive testing. That doesn’t mean testers should test the same features over and over again. Such repetition is of no use and would ultimately lead to pesticide paradox. Instead, testers should invest time in creating quality test cases, specific to each module and repeating the execution whenever new code check-in is done, i.e. after bug fixes, or after incorporating change requests. Such robust test suite, when used along with the regression suite, would definitely elevate the quality of the application.
  • Increased test coverage – Kids are not at all worried about restrictions, and neither should testers. Even if a module is out of scope for the specific release, they should include it in their regular testing, as long as they interact/ communicate with the modules which are in scope. For example, if testing an API is out of scope for the current release, but the application is still interacting with the API, in that case, API testing should be introduced along with the existing testing practices. Even though it would take some extra efforts, it would definitely increase the test coverage.
  • Detecting vulnerabilities at an early stage – Children are keen observers and as a tester, you too should keep a close eye on the application and how it is behaving. To add on to it, you must focus on the business knowledge backing the application. This will help you anticipate the expected behavior of the application, and help you in detecting vulnerabilities at a very early stage.
  • Asking simple questions can help in clearing big hurdles – Children are the most curious lot, and troubling their parents with constant questioning is the definitive proof. The questions can be pretty simple but sometimes we are unable to answer them because we ourselves have never thought of it. For example, if a kid asks you, why does fire feel hot, would you be able to answer him/ her? Well, such scenario can be applicable for testers too. Us testers, especially during requirement grooming, tend to take a lot for granted. Even when queries arise we term them as obvious or trivial and never get them cleared by the client or Business Analyst. Such doubts when not cleared turn into defects later in the development lifecycle and can create havoc during client demo. So the best solution is to maintain an ambiguity tracker and list down any and all queries that arise during requirement gathering. It will help in keeping defects due to miscommunication at bay.

 

Can’t we involve children directly to test software applications?

So now you might be thinking if the behavior displayed by children are so beneficial, why don’t we ask them to test the software themselves? The fact is, we should never involve children/ kids in software testing. The reasons are as follows:

1- It would lack the qualities of exploratory testing

  • When testers perform un-scripted testing, they do apply logic and make use of existing business knowledge to test different application scenarios.
  • Even though it is a form of ad-hoc testing considerable background knowledge and technical know-how is required. Such process can’t be followed by a child. This won’t add quality and decrease the testing efficiency.

2- Business complexity

  • Even a simple application for kids use different logics in order to stitch together different modules in a flow.
  • Explaining and providing background data for the different testing scenarios would be too much for a child to grasp.
  • Also, as he/ she won’t have any testing expertise it would be almost impossible to implement such techniques while testing the application.

3- Not recommended for kids

  • Testing, in general, requires a lot of focus and dedication. There are even occasions when a tester has to sit down for hours at a stretch to test a module, in order to avoid any break in continuity. Such a practice is not at all conducive to a child.
  • Apart from that, testers have to confine to their systems and stare and their monitors, which can impact a child’s health.

4- Risk of breach of confidentiality

  • Prior to a release the software product is kept under tight wraps in order to prevent any information leakage. This is done in order to keep new features and functionalities from landing in the hands of other competitors.
  • If children are to test an application, the chances are pretty high that they won’t care or know in depth what confidentiality means and may share the information or specification of the application with the public. Given the type of application, they would be testing, its best to refrain from such agenda.

5- Application content might be inappropriate

  • You as an elder must be very careful about what children are exposed to. Even a glimpse of inappropriate or violent content can impact their psyche.
  • As different applications are tailor-made for different utilities and age groups it is better to prevent any chance that might expose toddlers to aggressive or adult contents.

Conclusion

To sum it up in a few words,

  • Children are most persistent and are not worried about the restrictions that are imposed on them. Their only intent is to have fun and are not worried about the end goal.
  • Such behavior can provide important pointers as to how we should approach software testing.
  • Such observations if implemented in day to day testing can help improve the quality of testing and help us deliver better products.
  • Apart from focusing on testing practices, testers should emphasize on the business requirement and try to gather as much knowledge about the application as possible, no matter what the source may be.

Arindam Bandyopadhyay is an automation tester with over 5 years of experience in software testing. While during the day he juggles between Eclipse and spreadsheets, at night he lets his fingers do the talking as he writes about anything and everything his paradoxical mind desires.

About the author

arindam bandyopadhyay author

Arindam Bandyopadhyay is an automation tester with over 5 years of experience in software testing. While during the day he juggles between Eclipse and spreadsheets, at night he lets his fingers do the talking as he writes about anything and everything his paradoxical mind desires.

Leave a Reply

Your email address will not be published.