Pages

Wednesday, 27 August 2014

You Can Test!! The Attributes of a Good Software Tester

I'm a firm believer that anyone can become a Software Tester.

We all test everyday, whether it is trying to guess whether the lights are going to change to red while we are driving to finding out whether your roast lamb (insert favourite meat/vegetable if vegetarian) dinner is properly cooked and you're not about to kill your guests.

We all make thousands of decisions everyday, some of them are unconscious decision but most of them are conscious, based on experience, a pre-determined guesstimation of what might happen if a certain action were to occur in a particular context.  

The essence of Software Testing

1. Know what your current context is: 
What is the application designed to do? 
Which screen is the user currently on?
What is the current state of the item they are about interact with (e.g. in an Email application, the system should know if the item has already been read or not).

2. Determine the user action:
What can the user currently do on this screen?
Are there any options the user might choose which might change the way in which the application might determine the outcome?

3. Guesstimate the outcome of the users action:
What should the application do as a result?
What should the application not do as a result?

It's no more complicated than that.

Yes, there are people who are more gifted that they will generally know an Applications' weaknesses lie (this comes from experience only) and there are people who can just touch an Application and break it instantly (I just happen to be in this category!).  

Apart from these two categories of user, a good software tester is able to create thousands of user cases (context -> action -> result, as shown above).  The only other key attribute is an eye for detail, so that when bugs have been resolved by developers that you can verify that the bug raised is no longer present to the user.

Everything else is teachable by reading, using the development tools and most importantly understanding the Software you are trying to Test.

By the way, did I mention, it is impossible to fully test any Application to 100% completeness.  

I personally love it when code breaks, but that's just me!!

No comments:

Post a Comment