Preparing a talk: so you think you can test?

I am asked to do a talk at a test consultancy company. To prepare for this talk I want to share my thoughts with you. Hope you can challenge me to rethink or sharpen them.

As a test consultant I have worked for numerous companies and have met or worked with hundreds of testers. A lot of them claim that they are great testers. But are they? I think a lot of testers maybe aren’t that great…

Being a great tester takes a lot of practice. I like this “Becoming a Software Testing Expert” talk by James Bach a lot. The video by the way can be found here. And I see a lot of testers do not study their craft or read books about it. They do not learn or experiment at all. As a matter of fact they claim that they improved by doing their job: after years of doing my job I have a lot of experience! But as James says in his slides: “Don’t confuse experience with expertise”

In this post I like to address three topics what I have experienced that could be helpful become a better tester:
1) Adapt to the context
2) Collaborate
3) Learn & practice!

Everthing is context, context is everything!
Testers in the Netherlands are often trained with the V-Model and methodologies like TMap, TestFrame or ISTQB. Although I do not agree with everything they claim, there is “nothing” wrong with these test methodologies. Not if you don’t take them literally and see them as a practice. We need to become more “agile” in using these methodologies. Since the value of any practice depends on its context. Testers should to be able to adapt to changing situations. Doing so they are able to provide the most value to their stakeholders. Testers should focus on their skills instead of focus on procedures and processes.

Collaborate
Being passionate is contagious! By being passionate you will get your team test infected. Showing your testing skills can help the others in your team. My experience is that even developers will participate in testing if you can show them your skills. They love to build handy test tools and automated scripts which can help the team being more effective in testing! Start using your testing skills and teach others to do better testing. Testers should teach their team members how to test better! I like the way Gojko Adzic descibes it in his presentation “Sleeping with the enemy“: our role in teams will change: from testing everything ourselves, we will also be advisers in our projects. Ensuring that the team does the testing right. Our value is getting the testing right. Of course we’ll still be testing ourselves, the critical, complex testing will always be our job. In exploratory testing or paired testing we can demonstrate our testing skills. Good software testing is a challenging intellectual process.

Times are changing and so is the way we do projects. Collaboration is the key in becoming more effective and efficient in testing. Software development is a team sport: people, working together, are the most important part of any project’s context. So why do we introduce lots of test levels and quality gates? Separate the different disciplines in our projects? Create bulky test plans individually which no one will read?

Learn & Practice
Have you ever seen TV series like Benelux’ next top model or X-factor? People battle to become the best model or singer and win the show. Of course testing is not about beating your colleagues in a match. But this might be the only difference… In the TV shows the models and singers need to show their quality in different areas, every week they are trained in boot camps or by very experienced gurus. These coaches come from different disciplines. To be the best you need to learn all aspects of your job. How do we testers learn?

We need to practice continuous learning. Become skilled in various ways of testing. Practical tips to become a top tester:

  • Take testing classes: Rapid Software Testing or BBST are good examples.
  • Learn and gather ideas from reading books, online magazines and blogs
  • Learn by visiting conferences, participate in online conferences or watch the video’s that have been put online
  • Practice in Testing Dojo’s, weekend testing, software testing clubs, or organize it yourself in your organisation or team.
  • Meet with enthusiastic colleagues and discuss your experiences: peer mentoring, intervison, peer conferences, SIG’s, workgroups, etc.
  • Collaborate, learn from other disciplines: writing/reviewing requirements, coding scripts, using tools, etc.
  • Try different (open source) tools
  • Start writing and presenting about your work and thoughts, get feedback and discuss your thought to improve and discover new ideas.
  • Coach and get coached! Even professional tennis players or soccer players have coaches and trainer to get better and stay on the top.
  • Evaluate often! Make sure you get feedback from your colleagues but also keep evaluating your own work: your processes and your products. Always keep asking yourself the question: how can I do better next time??

Markus Gärtner has written a great article about this stuff called Alternative Paths for Self Education in Software Testing in the July issue of Testing Planet.

Update: slides of the talk can be found in the download section or here.

14 Comments

  1. Assia

    Very good tips to make test craft fun. Good article I love it. Thank you.

  2. Ramdeen Dwivedi

    Really helps me learn about testing,I would suggest every Test engineer to read this post which will help in IT industry.deliver quality product.one more time Thanks a ton.

  3. srinivas kadiyala

    Hi,

    Thanks for the Post.
    Its very useful.

    I liked the statement and confess it to be true.. “experience vs expertise”

    – srinivas

  4. LL

    Hi Huib,

    Wondering how do I able to join Testing Dojo’s? Because there is no sign up link/page provided.

    Thanks

    Regards,
    LL

    • huibschoots

      Hi LL,

      We do dojo’s at work. I know there are dojo’s at conferences (like Agile Testing Days). In April we do a public dojo at TestNet in the Netherlands. If you are able to, join them and learn from it. Then try them with a group of your own. If you need tips & trics: let’s Skype. You can find challenges to try in your dojo here: http://www.testing-challenges.org

      Good luck!

  5. Christiaan

    Huib,

    I was wondering what feedback you got from the company.

    • huibschoots

      Not too much feedback… 1 email 😉

  6. Ard Kramer

    Great post with one remark: the example of Next Top Model is in my opinion not a good example. I don’t believe in competition because it is the enemy of cooperation and knowledge sharing and research has shown that people keep things to themselves when they are in competition with others.
    The practical tips about learning are great and have the baseline that cooperation and discussing with each other makes you better but also your colleagues !

    • huibschoots

      Ard, Thanks for your comment. I agree and I tried to say that testing is no competition in the sentence: “Of course testing is not about beating your colleagues in a match. But this might be the only difference… “.

  7. Jeroen Mengerink

    Great post! Reminds me of our discussion at TestNet 🙂

  8. sanjay

    Very helpful!!!
    ~Cheers
    Sanjay sharma

  9. IJsbrand

    Great article, very true. I agree that the ability of a tester does not only lie in mastering a wide variety of testing techniques, but in knowing how and when to apply them. I’d like to add that often employers of professional testers do not spend enough time on educating their testers on these capabilities. Besides, testers need to challenge themselves to develop their craftmanship. In that respect I can only refer to the last comment of Paul.

  10. Paul Carvalho

    Great post! Good advice. There is one more thing I would add to your great list that I believe helped me become a better context-driven tester:

    * Change your job. Try a different role within the same team, department, company, or at another organisation.

    I went through the learning path you described above and thought I knew Testing. Then I went to another company and tried the same things that helped me be successful in the last company only to see them fail – or be less successful.

    I have held many different roles in my career – programmer, tech support, tester, manager, auditor, director – and they have helped me to see the organisational system from different perspectives. Changing how you view and interact with the system helps you to learn and understand things in different ways. Just like how a good tester changes their test techniques when one model stops producing new or useful information.

    I hope you reach a broad audience with your post. More testers who are interested in the craft need to recognise the path begins when they take ownership of their learning and career.

    All the best!

    Cheers. Paul.

    • huibschoots

      Thanks Paul. I agree: I have been in a variaty of different roles in different companies myself. It sure helps to learn and understand things in different ways.

Leave a Reply

Your email address will not be published. Required fields are marked *