The Pleasure of Finding Bugs
This article might contain some politically incorrect thoughts for many.?
Is it socially acceptable to take such an earthly pleasure or should a tester be of the divine kind?
Some readers of my articles find them philosophical or deep. I would have really started thinking about myself as a philosopher too seriously if I had too many readers reading what I write :-). Back to earth.
The truth is that I am a malang by spirit. So, I write with a care-free attitude. I write what I feel. As I write, I laughingly think - is being care-free the new face of philosophy? To completely, selfishly paraphrase George Orwell -?
"In a world of personal agenda, is an honest expression a philosophical thought?".
Here it goes.
I Feel Happy When I Find a Bug
Not when the bug finds me. No. Only when I find it.
The bug's personality does not matter when it itself finds me. Software crashed, so what. Did I make it crash? Was it my conscious choice of input variables and interactions? Unless of course it is so interesting that the follow-up investigation intrigues me.
I remember an organisation where I worked. They used to reward the best bug found in a month by a tester. Yup. That's what they ended up doing almost every time. The tester collected the award on behalf of the bug. The bug mattered. The tester's effort didn't.
I take pleasure in the investigation that leads to a bug. At times, just the investigation is a rewarding experience in itself.
I Enjoy Failure-Focused Variable and Interaction Choices
Yes, that too.
There is almost a filter that runs in my mind.?
Although I don't really want the subject under test to fail, most choices come to my mind to make it fail. Sounds bad, isn't it? I know.
I know that's not right. However, I never could shape my mind to proving that things are working. I have focused mostly on that they aren't. I think that makes me half the tester I should be.
That the things work is an assumption. That a bug exists is something concrete.
I can consult and teach others how to do the other parts. I would myself not want to take that up.
I Enjoy Exploration
I need to call this one out especially.
I have myself documented the Exploration-Exploitation Continuum . That's to represent the totality of work in testing.
As far as I am concerned, I enjoy doing new stuff all the time. I like coding for automation in testing, but not automating using it for the similar stuff over and again. I like to convert the explored ideas to more repeatable format, but not to act on that repetition myself repeatedly.
In the continuum above, the last zone Ri zone is the Malang zone - a mostly pure exploration zone. I often dream about it as the only zone I care about and want to be in. For now I travel back and forth for professional work.
So, Do I Break Stuff?
I want to give the credit where it is due.
Only the creator of something can break it.
So, yes I break my own stuff. My test design. My test automation. My thinking about a testing problem. My report. My reputation.
Oh, is this question about what I am testing? That's its creator's domain. I just take (almost sadistic?) pleasure in finding where it is broken and once that rush is over, humanely inform about it to all. What I can break is the humane part. Oh, I can also break the information part as well.
Am I being disrespectful to developers? Not at all. During this activity, I don't care who is the creator of what I am testing. So, respect/disrespect is not even the subject here. Collaboration with developer(s) follows. I try my best to curb my enthusiasm then :-).
I think that it takes a serious effort to critique something. Appreciation at times is like clicking the like button without reading the contents just because it is written by someone you love/respect.
When I test, it's all about what I am testing. I have often sensed an unsaid remark throughout my career - "Do you know whose work are you challenging?!". I have calmed myself down in such situations by saying that it shouldn't matter who the creator is/are. I am a tester.
There is another secret. I feel the happiness of finding bugs, only when I am not the creator of what I am testing.
While talking about degree of independence and its importance in testing, books and experts often talk about bias. I think they miss an essential point all the time - happiness. Degree of independence has a relation to happiness which an independent tester can feel more. Yes, I love my profession :-).
The Pleasure of Getting Bugs Fixed
That's an intriguing part as well. I have never cared about all the bugs I have found ever. Just because I found them doesn't make them important.
A roach is a roach I know. But some roaches are cute. Some roaches are more roaches than other roaches.
There have been many close to my heart. For them I have created stories, followed-up intensely right till the end.
In one such instance, when I was discussing security issues that I found, the CEO of the company (my client) was agitated and was looking for who to fire. I take pleasure in putting out the fires that the aftermath of a bug report causes. There is no point in blaming or finding scapegoats. We are all in the game.
Some bugs didn't get that kind of attention from me. I advocate fixes when I feel like advocating about a certain bug. Life is short.
There were still other bugs I cared for. They were never fixed or fixed to my satisfaction.
At some point in my career by working through performance and security aspects of objects, my mind completely shifted to bug patterns instead of chasing individual bugs.
When you focus on security aspects of a test object and your strategy includes running a scanner, you will soon realise that talking about bugs individually does not make sense. It's bug patterns that need to be fixed when a single run reports bugs in the hundreds. Such fixes are often more modular, architectural or configurational moves rather than simple scattered code changes.
The field of performance engineering also taught me an essential lesson - the worse of two metrics should win. For example in case two different response time metrics for transactions that tell you that your application can support 100 and 200 users respectively, you should report that 100 users are supported.
If it can fail, it will. So, better embrace the bad news rather than cherrypicking good news. Now, fix it while it's still a thing in the family. There is a fancy word for this too - constructive pessimism.
Why Did I Write This?
I have my own blind spots. Some I don't know about. Some I know but I choose to be blind about them - I don't care about them. They are almost dear to me as I think they define me.
At times, just because I write a lot and I speak a lot, it might make one to think that I think of myself as an expert. No, I am not. I write to serve my profession and its totality.?I write mostly in this mode.
Sometimes I write confessions. This is one of them.
Try writing one. You'll smile more.
Read Next:
Some related articles:
Tester @ Adobe
1 年Rahul Verma it feels like reading a chapter of a book. so when is the book coming?