Software Testing on Mars

Here is an interesting summary of the problem encountered by the Spirit probe on Mars.  Important test lessons: “test real-world conditions” “run long-haul stress tests” “SYSTEM BEHAVIOR: Spirit began acting up last week, when it stopped sending data and began rebooting its computer, resetting it roughly 130 times. At one point, the rover thought it…


how to contact me

I published this info when I started my GotDotNet blog; with the move, now is a good time to re-present the info: Bruce Williams I am a test developer for Indigo – current and future Web Services technology at Microsoft. e-mail:  IM:


If you develop on Windows – use AppVerifier!

 I read a post recently from a person who was disappointed that they hadn’t heard of the AppVerifier tool that Microsoft ships.  So let’s fix that – if you do commercial software development on Windows, you owe it to your customers to download AppVerifier and test your product with it.  It is an extremely easy…


Be verwy verwy quiet – we’re hunting bugs!

Eric Lippert has a great post describing some of his adventures with security issues in VBScript.  I particularly liked this segment: “Of course, it could be worse.  There was a bug in early versions of the CLR (which I believe was fixed before the first beta shipped, fortunately) where you could get an error message…


Fault injection tools from Microsoft

In a response to my recent post on fault injection, Mark asks if I know of any publicly-available fault-injection frameworks.  Yes!  In fact, much of the fault-injection work done at Microsoft is built on top of work done by Microsoft Research, and you can also take advantage of their work.  In particular, look at the…


For a good time, call 1-800-FAULT-INJECTION-TESTING

We have occasional debates here at Microsoft on the value of ‘white-box’ testing.  (For the sake of this discussion, ‘white-box’ testing means testing that takes advantage of internal product knowledge, while ‘black-box’ testing relies solely on the published API and behavior.) On the one hand, if the person who developed code writes the test for…


Test tracing – it is not optional!

I’d like to talk about one of the first lessons I learned as a tester at Microsoft: Anticipate failure investigations, and log everything. Let me tell you a fairly rambling tale of my early days at Microsoft: We’d just shipped Windows NT 4.0 (and IIS 1.0).  I’d recently moved from a contract position in the…


more Scoble stuff – there are many parts, but only one Microsoft

Again, while reading this same Scoble post, it got me thinking about my role at Microsoft.  When I tell people what I do at Microsoft, I say “I do software testing.  If you find a bug in a Microsoft product, it is my fault.” Of course, that is a vast oversimplification.  I work on one…


“The first priority, young man, is to find the bugs…”

 Prologue One of my teammates recently set up a Wiki site for my team, and I must admit that I have become quite addicted to it.  One of the pages I’ve created has been a list of common test areas, a checklist of things most of our tests will want to concern themselves with.  Things…


Escape Analysis; or, ‘how *did* that bug slip through testing?’

 After the Indigo team’s last milestone (M4), most of our feature test teams did an analysis of the bugs in their feature area, and extracted some useful ‘lessons learned’ to help us improve our testing in future milestones.  Here are some of the lessons we learned: 1.      Do breadth-first testing, sanity testing, and test prototyping…