Wednesday, April 29, 2015

Four simple steps to becoming the best tester you can be ...

This piece has appeared in Testing Circus recently, however it's so at the core of my philosophy, I really wanted to include it here within my other writing!


It seems right now thanks to YouTube's advertising policy, every time I want to watch a music video, I have to endure some ghastly advert of "hi ... I'm going to tell you the secret of how you can turn your life around in 5 easy steps".

I hate those hard sell advertising of "I learned the magical secrets of how to be a millionaire, and I'll share them with a room full of 100 people in my upcoming workshop ... for $10,000 a ticket".

I have to admit, I do have a tiny bit of a mercenary streak, and for a moment, I was thinking "wow ... I could do something similar for testing".  The only problem is, the testing pool is already full of sharks right now, and adding more doesn't help the community.

I've ended up talking almost daily to a young tester named Guna, who wants to become the best tester they can be.  She has an awesome drive of energy, and already is very active in the community, whilst being in a difficult position of being a sole tester on their project.  I'm very glad to find many of these "lone testers" joining Twitter, and seeking out the testing community.

From these conversations with Guna though, I've been wondering, What is the process to becoming the best tester you can be?  I've been sketching them down for a week, and as a list they do seem surprisingly simple - occasionally I'll think to add something new, but then realise it actually goes back under the umbrella of another item.

So these are my four simple steps to becoming the best tester you can be.  They are very simple concepts - however the complexity arises I'm afraid from the fact these are not "tick each off and turn your brain to standby".  They are values to live each day by - they don't guarantee you will be a brilliant tester today, but promise that you will be a better tester than yesterday.

Expand what you currently know

You have some knowledge of testing right now.  Look at methods to expand it.  For most people that means "let's look for a training course", and courses are really useful.  But there are also other methods - find out a book on testing, read a testing magazine or blog.

But don't forget to socialise as well - I learned a huge amount working alongside testers in EDS, simply because we used to all take a walk to the sandwich shop at lunchtime.  We'd talk about football, news, and TV mainly.  But we'd also mix in experience from other projects, things we were doing today in the test space etc.  That drip feed of knowledge from others over 2 years actually amounted to something quite tangible.  And indeed half that group I'm still connected with, and still my first line "brains trust" when I want to run a testing idea by.

In many locations such as Wellington, Sheffield, Brighton etc there are testers meetups where you can mingle with other testers, expand your network, and learn a few things.  As well as a wealth of things to watch on YouTube or TED talks.

Ask yourself whether at work, or in your networking, "am I having meaningful conversations about testing?".

Try out new ideas

Don't just keep sticking with "we've always done it like this".  Try and find new ways to trial out ideas for testing.  And here, "trial" is the operative word - don't build a critical delivery around something you've never tried before.  Find a way to try it out in a way that won't cause a meltdown if it doesn't go as planned.  Be prepared for needing to modify your first approach to "remove the kinks".

Ask yourself why - from your experience in testing, and from other's testimony - this new method will make a difference for the project in front of you now.  How can you tell if it's working?

This leads nicely to the third point ...

Monitor and seek feedback

Get used to trying ideas.  Sometimes unexpected things will happen - I can't tell you what, because that's why they're unexpected.  Sometimes your idea is basically good, however you may need to step back, see the bigger picture, and make some tweaks and improvements.

And don't just rely on your own observations - ask around people you trust.  Hopefully right now, you're working right alongside people you trust (if not, ask yourself how can you build that trust?).

Get feedback from others about how things are going.  Maybe they don't know much about testing?  It might be a good opportunity to talk to them a little about how you testing working and fitting in the grander scheme.

At times though you might find the gulf between your theory and running it in practice makes your idea unworkable.  Don't be afraid to "chalk this one to experience", maybe you now have enough information to see the old way had values you didn't originally see?  Maybe your approach would work better for a different project.  That experience is hard won and yours to use going forward.

Test everything

Embrace the philosophy and critical thinking which are core to the craft of testing.  In everyday life we build our thinking on an invisible raft of assumptions we often aren't even aware is under us.

Once in a while open your eyes to the world around you, and as a mental exercise ask yourself "how can I prove to myself beyond doubt that ...".  You may want to prove to yourself that "the world is round", that "roses are red", or that "two different people both independently recognise the same food stuffs as a 'sweet' taste".

Software and testing is built on a raft of assumptions, some assumptions are like "the Earth is round", we just take for granted without asking "what proof have I actually seen directly?".  But sometimes we need to be mentally aware of them, because some are not sound assumptions to make - and many projects have been caught out by not realising them!

Embracing critical thinking is all about trying to notice assumption and bias, and hopefully avoiding being duped or made a sucker.  A kind of critical life skill in a world with so much misinformation!

5 comments:

  1. Hi, I'd like to ask you if we could translate some of your wonderful articles to Russian for software-testing.ru website, for our readers to enjoy. We'll keep the link to the original article, certainly. Thank you anyway for loads of interesting information you share. Olga.

    ReplyDelete
  2. Nicely explained. Here you described the well written article from your in-depth knowledge. Truly impressive and nice information

    Java Training in Chennai Core Java Training in Chennai Core Java Training in Chennai

    Java Online Training Java Online Training JavaEE Training in Chennai Java EE Training in Chennai

    ReplyDelete
  3. Nicely explained. Here you described the well written article from your in-depth knowledge. Truly impressive and nice information

    Java Training in Chennai Core Java Training in Chennai Core Java Training in Chennai

    Java Online Training Java Online Training JavaEE Training in Chennai Java EE Training in Chennai

    ReplyDelete
  4. This comment has been removed by the author.

    ReplyDelete
  5. Wow, impressive and informative points to be the best tester. Thanks a lot for the share. ecommerce solution provider in coimbatore | coimbatore ecommerce

    ReplyDelete