Recently, two new engineers joined my team. They were straight out of university and had no formal testing experience (other than an hour of making sure the code does what the professor asked – not really testing).
This afforded me a great opportunity to stop and think about how best to develop people new to testing into truly stellar testers. So what was my training plan?
- Read Testing Computer Software by Cem Kaner, Jack Falk, and Hung Q. Nguyen.
- In parallel, run through the software under test tutorials which we release to our customers.
- In parallel, learn PERL (our scripting language of preference) where they coded specific scripts to solve a detailed specification. The script would invariable support testing.
- In parallel, study ISTQB Foundation and pass foundation exam. Note1
This was their first month.
Then they had to use what they learnt.
- Participate in paired testing sessions with more experience testers (mentors).
- While testing, any bugs they uncovered, they would report while being guided by their test mentor. Thereby learning how to write effective bug reports.
Then, it was time to walk on their own.
- Participate in test bashes where they are given a small bounded area of the software that is well described, has low complexity, with support from peers who have high expertise in the software under test.
- File bugs where appropriate.
- Create summary reports for development and stakeholders on test coverage, test results and quality opinion.
Within 2 months I was receiving feedback from testers and developers at other sites around the globe praising the contribution of the new testers. Now, 6 months on? I have two great testers who I trust. They find good bugs, high priority bugs. They are great at critically analyzing the software under test and I continue to get regular feedback praising them.
At the time, it was quite a turnaround to invest so much time and energy in development. Previously, most people joined and started bashing away at the tool within hours of setting foot on company soil.
The investment has paid off and we continue to prioritize their learning in parallel to their project work today. These two engineers have a very bright future in testing and will easily surpass me and their more "experienced" peers in a very short time! Success!
How did you learn to test? How do you train testers in your organization? Please let me know, I'd love to have some external input.
Note1: The ISTQB Foundation Certification by no means equals testing proficiency. Frankly, in my opinion, the foundation exam is more about terminology than anything else. However, it does give a sense of achievement and is something to work towards. Also, I found for engineers who are completely new to test, it was an effective discussion trigger. They would frequently have discussions between themselves regarding the topics covered in ISTQB as well as asking me questions regarding the actual practicality of testing versus the theory. From that aspect, I found it very valuable. The cost? Book + Exam Fee – not bad and the engineers felt a sense of achievement and career advancement.