If you are new to software testing, there might be a few caveats and nuggets of wisdom you might not be aware of or might be knowing them but not truly grasp the extent of their importance. A good tester picks up many things on their journey in becoming a great Software Tester.

Here are a few such things –

 

Context is vital

Not all apps are the same, every app is a unique venture that aims to solve unique problems. Know the context of the app you are testing and use your brainpower to come up with a unique war plan (A.K.A Testing Approach) that best suits the app. Do not attempt to use the same approach for every app you encounter, it might be tempting but remember that it won’t deliver the best results.

The approach towards a financial app should be different to that of a video content viewing app. They both serve vastly different functions and if tested the same way, would probably result in missing many bugs and be less effective.

 

Reproducibility

Sometimes you might find a bug but be unable to reproduce it again. You might be tempted to mark it as “Not Reproducible”, but that doesn’t mean it’s really non-reproducible.  You might not have retraced your actions properly or even know what exactly you did in the first place.

There may be many reasons you could not isolate the defect. Follow the good practices of documentation and thorough logging to never be caught in such a confused position.

Truly non-reproducible bugs are a pain which the development team has to spend a considerable amount of time on trying to figure it out, you don’t want to add to their plate by giving an incorrect report.

 

Reporting

It is commonly seen that inexperienced Testers do not accurately articulate and define the defects they find (This does not mean that every novice tester does this mind you).If the defect is not properly defined, the dev team won’t be able to find it hence cannot fix it. Any Software testing done is rendered moot if it fixes nothing in the end.

 

 

giphy

The random things count

The randomness of the real world is genuinely one of the most important aspects that has a far and wide reaching scope in software testing. You might not be aware of it, but it truly is one of the biggest influencing factors in app behavior.

 

The real world is chaotic. The app developers could never account for all the variables and compensate for this chaos when they build the software. There are way too many things that could affect the app behavior, like –

 

  • Wifi system

             The local wifi and LAN may have a firewall system that prohibits access to certain domains or websites. It could even  mess up assigning IP addresses to individual devices and separating them from other devices and users.

 

  • Location

          The physical location of the device plays a role in its behavior as certain apps use Geo-fencing technology to control the apps usage. It could even be a problem with the GPS coordinates where the software cannot properly handle the physical location data due to some error and falsely report the actual location.

 

  • The Internet

         The internet is… well, it’s just a network of computers. Data travels through many different computers/routers in a network to reach the final intended destination. If there is a problem with any one of such routing computers in the network, then the data gets distorted or even destroyed.

The network is smart and can reroute data traffic to handle such failures but in some cases the damage might be too small to notice. This is why the connection itself should be tested when you are finding bugs and hunting for their cause.

 

 

Creative Commons – https://en.wikipedia.org/wiki/Scientific_method

Software Testing is a scientific process. Much like the practices followed in lab experimentation, it involves making observations, coming up with a hypothesis, recording the data and then finally creating a report that outlines everything and analyzes the problem.

 

If you aim to become a great tester, this article should help you get started on your journey.

Check out our other blogs to learn more about the world of Software Testing –

Leveraging App Reviews

Approach to Testing Wearables (IoT)

5 Things A Startup Needs To Know About Software / Mobile App Testing

 

These blogs by other Testers are a great resource too –

Ajay Balamurugadas –

Software Testing, Some myths and the Path forward…

_____

By James Bach and Michael Bolton –

A Context-Driven Approach to Automation in Testing

_____

Women Testers (online magazine) –

WOMEN TESTERS – APRIL 2016 EDITION

 

 

Wish to add your own nuggets of wisdom? Comment below!!