February 27, 2012

Take The Crappy Path

Take The Crappy Path

Wikipedia defines the Happy Path as "a default scenario that features no exceptional or error conditions, and comprises the sequence of activities that will be executed if everything goes as expected."

Alan Page calls it "Simple inputs that should always work."

Developers take the Happy Path. Their Unit Tests often consist of using their code in the obvious way in order to produce the expected results. They instinctively want to see their new creations succeed so they inevitably focus on success. See how nicely behaved my code is! Happy, happy. copyrightjoestrazzere

Product Managers take the Happy Path. Put nice values in, take a nice marketing-oriented screenshot of the results. Show it to the Sales Team. Happiness all around.

End Users typically take the Happy Path during User Acceptance Testing. A little bit of typical clean input in, typical expected output out. Now let me stop wasting time with this new system and get back to my real work, so I can leave on time and be Happy.

And you use the Happy Path in your testing. After all, if the new build of your system-under-test can't stand up to the Happy Path, why waste any more of your valuable testing time?

But you don't settle for staying on the Happy Path. No, you are a professional tester; you can do better! You know that nobody else will bother, so it's up to you. You step onto the Crappy Path:
  • You see a date field and you think - February is a crappy month, so why don't I just enter February 31st and see what happens...
  • The system asks you to upload a text file? Well, let's just see what it thinks of a picture of my crappy dog, renamed to have a .TXT extension...
  • Hmm. This website says not to use the browser's Back button. Sounds like a crappy challenge to me!
  • Install, uninstall, then install again? That would be a crappy thing to do...
  • The application is asking you for your age. You're feeling crappy, so for today perhaps your age will be "-1"...
  • A registration form?  Perhaps you'll completely fill every character in every field, usually with crappy special characters...
  • Nothing but a crappy system would have only 0.5 GB disk space remaining. Let's just see what happens to this application on a crappy system...
  • Seeing a fork in the road, you say to yourself - What would happen if I replaced that crappy fork with a knife...

So leave the Happy Path to the optimistic, the timid, the weak, and the simple. Join the ranks of professional testers. Venture with me off the beaten path, and onto the Crappy Path!

Leave me a comment if you have a particularly good story about testing on the Crappy Path.

Image: renjith krishnan / FreeDigitalPhotos.net

This article originally appeared in my blog: All Things Quality
My name is Joe Strazzere and I'm currently a Director of Quality Assurance.
I like to lead, to test, and occasionally to write about leading and testing.
Find me at http://AllThingsQuality.com/.

1 comment:

  1. Corporate Websites ... My company is so busy working on the end user product that no one has had time to look at it nearly the 2 years I've been here.

    Current Events until recently included a trade show dating back to 2006 or was it 2003!!!

    Some times it makes sense to leave the traveled path and look for unbeaten crappy path.