Skip to main content
Process · Bug Reporting

Write bug reports developers act on.
Ten steps, in order, every time.

A bug report is a sales document aimed at a developer. This is the ten-step sequence we use on every engagement to write reports that get fixed instead of dismissed.

Steps
10
Time per report
10–20 min
Compatible with
Any tracker

A bug report is a sales document aimed at a developer. Write one they can act on, and you get a fix. Write one they cannot, and you get silence.

Key Takeaways

Four things to remember.

01

Structured first, expressive second

Before you write a single line, you have to reproduce, isolate, and generalize. Most rejected bug reports skip these three.

02

Every word is on trial

Condense, disambiguate, and neutralize. Three passes. Anything that does not help a developer reproduce or prioritize comes out.

03

Peer review before submit

The single highest-leverage step. A five-minute review by another tester catches the ambiguities you cannot see anymore.

04

One format, one tracker, zero exceptions

Teams lose days to reports filed in email, Slack, and three different tools. The process ends in your tracker, always.

Why this exists

The problem this process fixes.

Most rejected bug reports are not rejected because the bug is not real. They are rejected because the report makes the developer do all the work — reproduce it, figure out what is and is not in scope, guess at severity, infer the user impact. Developers have a backlog. The path of least resistance is to close the ticket.

This ten-step process exists to eliminate that path. Each step is small. In sequence, they produce a report that a developer can pick up, reproduce in minutes, and fix with confidence.

The checklist

10 steps, in order.

  1. 1

    Run each test using structured, careful testing techniques.

  2. 2

    Reproduce any deviations from expected behavior.

  3. 3

    Isolate the bug by checking the effect of key variations, looking for workarounds as well.

  4. 4

    Look for the general case, especially one more severe or objectionable.

  5. 5

    Compare the abnormal behavior observed with the behavior of the system under similar conditions on this or previous test releases.

  6. 6

    Summarize the failure, including the effect on customers or users.

  7. 7

    Condense the report, removing unnecessary information.

  8. 8

    Disambiguate, removing confusing, misleading, or imprecise words.

  9. 9

    Neutralize the bug report, expressing ideas impartially and fairly.

  10. 10

    Submit the bug report to a peer review, resolve any problems found, then enter the bug report into the bug tracking system.

One more thing

The ten steps are not optional. Skip one and the report costs the developer more time than it saves the test team. Skip three and it gets closed as "cannot reproduce." The discipline is the deliverable.

Take it with you

Download the piece you just read.

We keep this library free. All we ask is that you tell us who you are, so we know who to follow up with if we release an updated version. One-time form, this browser remembers you after that.

Need a QA program to back this up in your organization?

If a checklist is not enough and you want help applying it to a live engagement, we can have a call this week.

Related reading

Articles, talks, guides, and case studies tagged for the same audience.