When I became a professional software tester, I wondered what makes a good software tester. Is there a reason why some testers excel at what they do, while others remain at the same skill level and rarely achieve greatness? This question intrigued me, so I went on the search for an answer.
As I learned software testing, I followed the work of expert software testers. As I read their writing, I sensed that they have genuinely passionate love for their work. The realization came to me that I have to focus on exploring love in order to look for an answer about what makes a good software tester. My approach was a metaphysical one because I had no doubt that an analysis of the foundation of greatness would offer me more insight into how to become one.
The most famous book I knew about love was The Art of Loving by Erich Fromm. In this book, Fromm argues that love is an art. The first step in learning art is to learn the theory. The second step is practicing the theory. Mastery of theory and mastery of practice eventually lead to intuition, which is the essence of mastery of any art, says Fromm. However, Fromm asserts that in learning an art, there is a third element that is essential: “the mastery of the art must be a matter of ultimate concern; there must be nothing else in the world more important than the art.” I was struck by this idea because, for the first time in my life, I understood why great software testers never give up striving for excellence.
I realized that one must have a higher reason for doing software testing in order to be a genuinely passionate software tester. To me, it is through software testing that I am able to make a difference in my life. This is why I am passionate. A higher goal carries meaning that makes one not want to give up doing software testing. This is the energy that drives testers to strive for greatness in software testing at all times. Without a higher goal, a software tester will reach a certain level of expertise in his field and be unable to learn anything else because he has no higher meaning behind software testing, which would inhibit his or her enthusiastic energy to learn new things. Ask a software tester if he has a higher goal that goes beyond software testing if you see him lacking passion. I believe the answer will surprise you.
Thus, a love of testing is the foundation of greatness in software testing. A software tester will always be passionate about software testing if he has a higher goal attached to it outside of work. There are then two basic elements to learning software testing. Software testers have to learn theory about software testing and then they have to put what they have learned into practice consistently. My emphasis here is on continuous practice. It takes a focused mind and a constant, active work process to master software testing. One has to put in efforts in software testing that is a little beyond their skill set and overcome that burden with daily deliberate practice.
If love is the practice of art, then software testing is a form of art when testers are genuinely passionate about their work. I realized within myself that software testing is the art of thinking. I have to think of things no one else has thought of. I have to think about the things that product owners, software engineers, UI/UX experts might not have thought about while creating and developing a new feature. I have to ask myself how to prevent future software mishaps. Therefore, the more scenarios I imagine of how I can test the software, the better I can guard and prevent the software from future failures. The software tester has to become a disciple of questions. It is the art of questioning the uncharted territories because a great software tester will naturally have an inner drive to experience what is not visible with his own eyes – the invisible parts of the software!
The Art of Loving taught me that a great software tester is distinguished from a mere tester by having a strong inner goal regarding software testing in personal life outside the work. This gives enthusiastic energy to devote complete attention to the software testing profession and for learning and practicing that manifests as an artistic activity. It is up to the individual to determine what type of art software testing is. For me, it is the art of touching every DOM element with consideration. In other words, I see individual HTML elements with my eyes on the page – I think about what I see with my eyes – how I can test it, how I can protect it from future misfortunes. And I consider what is hidden from me on the page – what can I learn from it that would make my testing more effective or prevent software from future errors.
In conclusion, you will achieve greatness in software testing when you look at it as an artistic activity, and follow and practice every skill required to master an art.
Testphilosopher! A software tester who approaches testing from a philosophical perspective.