DevelopsenseLogo

Premature Formalization

Formal Bow Tie and Shirtfront

“The real problem is that programmers have spent far too much time worrying about efficiency in the wrong places and at the wrong times; premature optimization is the root of all evil (or at least most of it) in programming.” -Donald Knuth, The Art of Computer Programming Most of the time testing shouldn’t be too formal — unless you want to miss lots of bugs. To test something formally means … Read more

Testing Deep and Shallow (3): Determination

After almost a year of the blog lying fallow, it’s time to continue the series on Testing Deep and Shallow that begins here. (Shallow testing (not an insult!) is testing that has a chance of finding every easy bug. Deep testing maximizes the chance of finding every elusive bug that matters.) Premise 6 of Rapid Software Testing is about cost and value. “We commit to performing credible, cost-effective testing, and … Read more

Testing Deep and Shallow (2): “Shallow” is a feature, not an insult!

When we talk about deep and shallow testing in the Rapid Software Testing namespace, some people might assume that we mean “deep testing” is good and decent and honourable, and that we mean “shallow” to be an insult. But we don’t. “Shallow” is not an insult. Depth and shallowness are ways of talking about the thoroughness of testing, but they’re not assessments of its value. The value or quality or … Read more

Testing Deep and Shallow (1): Coverage

Many years ago, I went on a quest. “Coverage” seemed to be an important word in testing, but it began to occur to me that I had been thinking about it in a vague, hand-wavey kind of way. I sensed that I was not alone in that. I wanted to know what people meant by coverage. I wanted to know what I meant by coverage. In the Rapid Software Testing … Read more

“What Tests Should I Automate?”

Instead of asking “What tests should I automate?” consider asking some more pointed questions. If you really mean “how should I think about using tools in testing?”, consider reading A Context-Driven Approach to Automation in Testing, and Testing and Checking Refined. If you’re asking about the checking of output or other facts about the state of the product, keep reading. Really good fact checking benefits from taking account of your … Read more

Testing Doesn’t Improve the Product

(This post is adapted from my recent article on LinkedIn.) Out there in the world, there is a persistent notion that “preventing problems early in the software development process will lead to higher-quality products than testing later will”. That isn’t true. It’s untrue, but not for the reason that might first occur to most people. The issue is not that addressing problems early on is a bad idea. That’s usually … Read more

To Go Deep, Start Shallow

Here are two questions that testers ask me pretty frequently: How can I show management the value of testing? How can I get more time to test? Let’s start with the second question first. Do you feel overwhelmed by the product space you’ve been assigned to cover relative to the time you’ve been given? Are you concerned that you won’t have enough time to find problems that matter? As testers, … Read more

Alternatives to “Manual Testing”: Experiential, Interactive, Exploratory

This is an extension on a long Twitter thread from a while back that made its way to LinkedIn, but not to my blog. Update, 2022/12/07: James Bach and I have recently changed “attended” to “interactive”, to emphasize the tester’s direct interaction with the product that happens during so-called “manual” testing. “Inteactive” is more evocative of what’s going on than “attended” is, but it’s also true the tester’s interaction might … Read more

“Manual Testing”: What’s the Problem?

I used to speak at conferences. For the HUSTEF 2020 conference, I had intended to present a talk called “What’s Wrong with Manual Testing?” In the age of COVID, we’ve all had to turn into movie makers, so instead of delivering a speech, I delivered a video instead. After I had proposed the talk, and it was accepted, I went through a lot of reflection on what the big deal … Read more

Suggestions for the (New) Testers

A friend that I’m just getting to know runs a training and skills development program for new testers. Today he said, “My students are now starting a project which includes test design, test techniques, and execution of testing. Do you have any input or advice for them?” Here’s my reply. Test design, test techniques, and execution of testing are all good things. I’d prefer performing tests to “test execution”. In … Read more