In which the conversation about heuristics and oracles continues… Tony’s brow furrowed as he spoke. “No oracle comes with a guarantee that it’s giving you the right answer. That’s what you said. But surely there are some oracles that are reliable,” he said. “What about pure math?” “Pure math? All right. Here’s an example: what’s [...]
In which the conversation about heuristics and oracles continues… “So what’s the difference,” I asked my tester friend Tony, “between an oracle and a heuristic?” “Hmm. Well, I’ve read the Rapid Testing stuff, and you and James keep saying an oracle is a principle or mechanism by which we recognize a problem.” “Yes,” I said. [...]
This conversation is fictitious, but it’s also representative of several chats that I’ve had with testers over the last few weeks. Tony, a tester friend, approached me recently, and told me that he was having trouble understanding heuristics and oracles. I have a heuristic approach for solving the problem of people not understanding a word: [...]
People sometimes seem to struggle with a concept that’s central to testing, the concept of “oracle”. In the three-day Rapid Software Testing class, we define an oracle as a principle or mechanism by which we recognize a problem. Sometimes I like to emphasize that oracles are fallible and context-dependent. When that’s so, I say that [...]
A strong, active, local testing community is a wonderful thing. Kitchener-Waterloo, a hub of software and software-related companies small and large, has such a community, and an active association in the KWSQA. Each year, the KWSQA presents the Targeting Quality conference, which I’ve had the pleasure of participating in for a few years. Alas, this [...]
Jerry Weinberg tells a story (yes, it’s me; I’m telling yet another Jerry Weinberg story) of meeting an old friend who looked distraught. “What’s the matter?” Jerry asked. The fellow replied, “Well, I’m kind of shellshocked. My wife just left me.” “Was that a surprise?” “Yes, it really was,” the fellow said. “I mean, we [...]
In the last post in this series, I noted some potentially useful structual similarities between bug reports (whether oral or written) and newspaper reports. This time, I’ll delve into that a little more. To our clients, investigative problem reports are usually the most important part of the product story. The most respected newspapers don’t earn [...]
We were in the middle of a testing exercise at the Amplifying Your Effectiveness conference in 2005. I was assisting James Bach in a workshop that he was leading on testing. He presented the group with a mysterious application written by James Lyndsay—an early version of one of the Black Box Test Machines. “How many [...]
Calculating a ratio of passing tests to failing tests is a relatively easy task. If it is used as a means of estimating the state of a development project, though, the ratio is invalid, irrelevant, and misleading. At best, if everyone ignores it entirely, it’s simply playing with numbers. Otherwise, producing a pass/fail ratio is [...]
Here’s a classic case of poor design and user experience. Most of us have seen something like it. It happened to my wife yesterday. It will happen to you again soon, probably. You’re making an online payment for some product or service. You press a button that says something like “Submit Payment”. A web page [...]



