The Problem with TheApp

Last week, I posted a small testing challenge (in short, an application wouldn’t launch).Shmuel Gershon has a wonderful write up of how he found the problem here.

For those too lazy to read, the problem was that the application attempted to read a reg key on launch, and failed to launch (with no diagnostics) if the reg key didn’t exist.

Having done a massive amount of application compatibility testing over the years, this is a fairly common scenario I’ve run across (simplified quite a bit in this case). Typically, it works like this: a team makes an update to an application or operating system, and some application begins to fail in a bizarre way (including failing to launch, as well as functionality or stability changes). After some investigation, we usually discover that the application relied on a registry key, a file, or functionality that no longer exists, or has changed. Half of the time, the application vendor is out of business, or doesn’t have the bandwidth to make an update, so we have to figure out what went wrong and hack do whatever is necessary to ensure the application continues to work.

Some of the time, the investigation requires a bit of reverse engineering, but at least 9 times out of 10, I use tools like sysinternals procmon to see what’s going on. I was happy (but not surprised) to see that Shmuel ended up using this tool to find the issue (and was even happier to see how well the tool led him to the exact issue).

For my job, I do almost as much investigation into why things don’t work as I put into discovering what works (and doesn’t work). To me, the detective work is part of the testing role. I was surprised yesterday, when a tester told me that his job was problem detection only, and that the rest was for someone else. That world of testing would be boring to me – ymmv.

Congrats Shmuel for the great investigation, and for having this valuable tool in his toolbox.

 

Note: for simplicity, I put the key under HKCU so everyone could access it, and used an obvious key name (MagicValue) – in the real world, it’s not always this way.

Similar Posts

  • What Happened?

    As I approach the half-century mark of existence, I’ve been reflecting on how I’ve ended up where I am…so excuse me while I ramble out loud. Seriously, how did a music major end up as a high level software engineer at a company like Microsoft? I have interviewed hundreds of people for Microsoft, who, on…

  • LOL – UR AUTOMASHUN SUCKZ!

    There’s a pretty good presentation from the folks at Electric Cloud making the rounds on “why your automation isn’t” (and other variations on that title). The premise is, that testers spend too much time babysitting (supposedly) automated tests, and that testers end up doing a lot of manual work in order to keep their automation…

  • Time Flies

    I wrote a bit of a career retrospective just a few months before I joined the Communicator team at Microsoft (the series is captured in these posts: (part 1 is here, part 2 is here, part 3 is here, part 4 is here, and part 5 is here). June 6, 1995 – exactly 15 years…

  • Fear Factor

    I had one of those meditative weekends, where between solving Advent of Code challenges, seeing the new Star Wars movie, and cleaning my home office, some ideas (sort of) merged in my head. One part of the recipe was yet-another-discussion on twitter over the weekend (over) reacting to the Test is Dead theme that came…

4 Comments

  1. It was great to read Shmuels write-up of his investigation, almost as good as pairing with him.

    I’ve dabbled a bit with Procmon, I’ll have to dabble some more

    thanks for the challenge, it could have fallen flat with no responses but turned out to be a good learning opportunity

  2. I enjoyed very much the thrill of reading Shmuels investigation. This is a great way to improve my tests skills. Thank you Alan and Shmuel

  3. Phil,
    “almost as good as pairing with him” … That is praise for Rapid Reporter and the way it leads a tester to share his mind. 🙂
    I’ve seen once and again sessions that are made intelligible by Rapid Reporter. Yay.

    Alan,
    “I do almost as much investigation into why things don’t work as I put into discovering what works (and doesn’t work).”. Nice point, and good approach.
    However, while the extreme of “problem detection only” can be harmful (and boring), the other extreme of insisting too much on an investigation can also be harmful. I was once told by a (good) manager to consider investigating less, as when it is too much I could invest this time into finding more and new problems. I think often times this is a valid consideration, and the right answer of course follows rule #17.

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.