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

  • Some Stuff I’ve Learned

    I picked up my Xbox One this morning – a special white console with “I made this!” engraved on it. The reviews started appearing last night, and for the post part, they’re quite positive (and I’m not surprised by the drawbacks listed in the reviews I’ve read so far). Now that this project is officially…

  • Learning to learn

    As I write this, I’m waiting (literally, waiting on hold) to give a webinar for Swiss Testing Night. It’s a twenty minute presentation – which I love (see my last post for another twenty minute presentation from me. I would love to see a test conference filled with nothing but 20-30 minute presentations someday (and…

  • |

    Five for Friday – December 1

    Some of my favorite / most interesting thoughts and links from the week… Yet another quote from one of my heroes, Simon Sinek: “There are only two ways to influence human behavior: you can manipulate it or you can inspire it.” I half-jokingly told someone on my team this week that “leadership is manipulation”, and…

  • Roles and Fluidity

    I had a twitter conversation this week about roles this week. I’ll recap it – and expand on my views; but first I’ll tell a story. Very early on in the Windows 98 project, I was performing some exploratory testing on the explorer shell and found an interesting (and slightly weird bug). At the end…

  • Fall Travel

    I just got back from (yet another) vacation with the family – it’s been fun spending some extra time with the family this summer, but I think we’re (almost) done now, and it’s time to get back to work and to start thinking transitioning the kids into sleep schedules that accommodate school hours. With the…

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.