I want to pose a question: Is a generalized simplified model for priming novice testers helpful or confusing?
I struggle with this question when creating training material and teaching testers. It’s a natural inclination of mine to want to distill what I have learned into some concentrated and easily digestible brew. Something that testers can take, use, and then become better testers. The catch though, is that I know that’s not possible with testing. Anything I create at best is going to be an imperfect model. In some cases it may help, and in others it would surely fall flat. Another concern of mine is novice testers on the hunt for a silver bullet or a magical list to follow. Since testing is about critical thinking and not lists, I want to try and avoid anything I create being used in this way.
Let’s see shall we? Let me outline some intentionally simplified ideas that a new tester could consume and then evaluate its usefulness.
As a novice tester consider…
- Learning: As a tester you should always be learning. Not only about the products you need to test, but also ways to test it better. You should read blogs, books (from all fields) and join a community of critically thinking testers. From a product perspective you should read everything you can get your hands on as far as specifications, help files and even the code itself. All learning is connected and can help you be a better tester.
- Communication: Ask questions about the product, about testing or anything you don’t understand. Don’t be afraid to challenge people around you and the decisions being made. Yes, you can challenge ideas without starting a war. Most of the time asking questions in a professional way will get the conversation moving in the right direction. Talk to everyone you can. Make friends and mentors in the testing community and engage your stakeholders on the project. Communication is key to learning about testing and the product.
- Create Artifacts: I say artifacts because it could be anything that helps inform your grasp of the product or testing. It could be scribbles on a piece of paper, a Mind Map that only you can make sense of, or detailed flowcharts. Sometimes you will need less in the artifact department; other times you will need more. Strike the correct balance.
- Heuristics and Oracles: Use heuristics and oracles to help you identify and solve problems. No, it’s not a silver bullet either, but it’s a tool we can use. Consider the HTSM: Heuristic Test Strategy Model (James Bach/Michael Bolton) and other heuristics like risk and consistency to inform your testing.
- Explore: Explore the application looking for value to the customer. Apply information you have gathered along the way. Be a critical thinker while being skeptical about what you find and are given. You’re easier to fool than you think you are. Give yourself permission to wander while testing now and again. You can come back to what you started testing. This may help you avoid tunnel vision.
- Tell a compelling story: Testing is a performance. James Bach and Michael Bolton espouse that “It’s just as important to tell people what you did not test as it is to tell them what you did test.” Learn about the parts of a compelling testing story and how they support one another. Demonstrating to stakeholders what you tested and why it’s just as important as the testing itself. You may find yourself trying to convince someone that something is not ready for release. You will want a well-constructed story that day.
Ok… So was this helpful or confusing?
As the author, I would like to think that at some level the above information is helpful. After all, that’s my intent in providing it. I want to help people become better testers. That being said, you cannot boil down testing into six items in a list with some generalized sentences and links tacked on. So, I can see how someone with no testing experience could be confused and overwhelmed. I think that’s a good thing though. You don’t know what you don’t know. Part of learning and becoming a good tester is realizing that. I have alluded to things in each paragraph that require examination and study. Go find out what I am talking about and learn.
I presented this to a novice tester and was told that it was helpful, but reminded her just how much she still needed to learn. That made me smile. She reluctantly admitted that a one-stop list that she could use every day is something she wants and asked if I listed the ideas in order of importance. Interesting question, and the answer is no with the exception of learning. I think learning should be first in our minds. Short of that I could and would list the rest in any order and would be just as happy. I stressed to her that she should not think about it as a list. It’s meant to get her learning and thinking. It’s not some checklist to be used on a daily basis. She could use it to prime her mind, but once she starts learning about testing that should no longer be necessary. She went on to explain that the information in each paragraph was informative even without the links and that it made her consider being curious while asking more questions and picking things apart. Very positive feedback from a novice tester that answers most of the questions I had about the information presented.
So, it seems that this article is helpful to novice testers. Well, at least to one novice tester so far. It will require more research, and thus I am releasing it to the masses to collect more data. I think it’s safe to say that the information is a good place to start as the title states. I hope it sparks your curiosity and challenges you to learn more and become a better tester. We all have to start some place, and I think this is as good a place as any.
Thanks to James Bach for helping me refine this article and for all his wonderful work that I have learned from over the years.