Skip navigation.

Get Medieval on Your Apps

I believe that an essential trait for any software tester is a mean streak. Maybe it only comes out when testing, but it has to be there to find the best and most defects. At times in the past, especially in requirements-driven contexts, I think my approach to testing applications was more like a therapist than a dungeon master. I've been on projects where verifying requirement conformance took 100% of the time available to test.

It can be easy to forget that software testers are not just code measurers coming around with calipers to insure all software falls within accepted tolerance levels for functionality. We're also code torturers, the kind of sick individuals who should enjoy ripping out the heart of an application and then showing it to the programmer (in a well written defect report of course!). Remember, while programmers have feelings, software does not, so torture away! Starve it of memory, deny it access to vital services that are supposed to keep it running, cut off its components one by one and see how it responds until it finally dies. These are just a few of the implements of pain at our disposal. Anything that could conceivably happen in the field should be fair game. Don't be afraid to get sadistic with your software!

What's your favorite sadistic stress testing technique?

Horses for courses

[textile] Christopher wrote:
An end user is not going to sit by and 'play nice' with the computer or the people responsible for handling the problem if it makes it to production. I'm sure we all have our own war stories about an unsatisfied customer calling up with a select few expletives to describe the software that just crashed on them and they certainly don't care about the method used for finding the issue.
Simplifying this for a moment... There are two paths you can walk to achieve the same goal. The Jedi way or the Sith way... (ok... you can do something in between too). As long as the result is the same, does it matter how you get there? Ainars has made a good point that how you get there can potentially have an effect. Other than that, I say it's horses for courses. I don't think there is one right way. The 'Sith' way sounds like more fun and, as illustrated in John's original post, can be more entertaining to write/talk about (i.e. more seductive). The 'Jedi' way is less seductive but happens to be the one that works best for me personally. If you prefer the dark side, that should entirely be your choice. The one time I believe it does matter how you achieve the result is when mentoring new testers. It's important that they have a balanced view... this was the motivation for my original comment.
I saw nothing in John's post hinting that we should be 'smug' with the developers or start using the force to choke them with their defects.
I saw nothing in my post that suggested that John thought "we should be 'smug' with developers or start using the force to choke them with their defects". I was illustrating, by example, that you need to be able to switch it on and off at will. This wasn't addressed in John's original post. In my experience, I've encountered too many testers that don't switch and do actually start choking developers with defects. It happens and my comment was intended to warn against it.
He's merely pointing out that everything does work in opposites, be evil till you find something, then switch gears and look at what you've found in a different light.
Finally, your interpretation of what John was saying in his original post I think is very different to mine... I interpreted what he was originally stating as one mind-set that he uses in appropriate measure to help him find those less obvious defects, but not necessarily the only mind-set or persona he will adopt. This happens to be one he has found useful and wanted to write about. John did not address the latter part of your statement ("then switch gears and look at what you've found in a different light")until I'd posted my comment. This was the outcome I was looking for... and indeed to present an alternative viewpoint... This has been a great discussion... fun, interesting and enlightening for all I'm sure... well done John! -Antony

Exactly!!!

Well said Ainars!

--Antony

Software doesn't feel but the users sure will

An end user is not going to sit by and 'play nice' with the computer or the people responsible for handling the problem if it makes it to production. I'm sure we all have our own war stories about an unsatisfied customer calling up with a select few expletives to describe the software that just crashed on them and they certainly don't care about the method used for finding the issue.

I saw nothing in John's post hinting that we should be 'smug' with the developers or start using the force to choke them with their defects. He's merely pointing out that everything does work in opposites, be evil till you find something, then switch gears and look at what you've found in a different light.

The dark side is easier to take

Let me protect the light side a little bit. I believe in testing (just like in the movie) it is easier for novice tester to take the dark path. It is easier to find source of a power from hate and get immediate satisfaction when a bug is found. It takes years to realize that project success and customer satisfaction may be even better source (and once the it fails despite your heroic efforts - you loose your faith in the light side again).
P.S. You can't cheat your mind, if you hate software you could pretend loving it's creator, but your subconscience mind is becoming darker and darker each day

LOL!

LOL!

I'm not the only star wars geek in this village afterall?

Awesome!

Antony Marcano

Agreed

I would never advocate being smug to a developer. That gets us nowhere and can only serve to lower our Street Cred with everyone else.

Furthering the Jedi metaphor, perhaps the path of Mace Windu is a good compromise, incorporating just enough of the dark side into our technique to be deadly, but still a noble warrior with a not quite red blade. Hopefully that won't get some of us a severed hand and thrown out of an office window :-)

P.S.

[textile]...I prefer to be a 'Jedi Master'... thoughtful and controlled yet equally destructive... when I do cause that almighty crash I am content that I have used my powers for good and share the interesting elements of how I managed to achieve it with the developer...

But... such an approach just doesn't make as entertaining a post (or title) as John's "Getting Medieval on your Apps"


Nice post John!

-Antony

Dark Lord of the Sith... or Jedi Master

[textile]Some time ago, at a UK conference, James Whitaker gave a very entertaining talk, in which he also talked of testers needing a mean streak... During the same talk, James also talked of 'Jedi Testers'...

Now, I'm a bit of a Star Wars geek so, In the pub afterwards (I'll admit that I'd had a pint or two), I took the two remarks a little out of context and suggested to him that he was teaching the ways of 'The Dark Side'... (obviously, this was all in good humour and we had a good laugh about it)...

Should a tester use Jedi powers but call upon their anger, frustrations and most sadistic emotions to bring about the destruction of the software? Remember, anger leads to hate and hate leads to suffering... these are the ways of the dark-side... ;-)

Some prefer to turn to the dark-side when testing. Others prefer to test more like a Jedi... Thoughtful and calm, using their powers only in defence (of the goals of the project) not with the (primary) intent of attacking the software. However, as we know, sometimes attack is the best form of defence ;-)

Whichever approach you find most effective, use it to your advantage...

If turning to the dark-side, however, be mindful of your feelings ;-)

When you do find a cool bug, remember to switch off that mean streak before submitting a bug report or discussing it with a developer. A developer recently told me of a tester who came to him with a smugness about him and a tale of how he had decimated the developers code. You can imagine that the developer didn't take it well and this will undoubtedly hinder future discussions...

The last thing you want in the conversation with the developer or the bug-report is evidence of that mean streak... So, if you are going to become Darth Vader while you are testing, when the time comes to communicate the bugs you've found, like Yoda should you be ;-)

Think I take all this too seriously? What can I say, "we take Jedi's quite seriously here in the UK":http://news.bbc.co.uk/1/hi/uk/1589133.stm
;-)

(In case you are wondering... I really am joking... but I think there is a lesson in there... somewhere)

Antony Marcano

this was enough

Simply sending this link to the devs was enough to get them stressed...

Comment viewing options

Select your preferred way to display the comments and click 'Save settings' to activate your changes.