Taiab's Blog

How to Write a Bug Report That Actually Gets Fixed

Md. Taiab

Md. Taiab

2024-09-22 ยท 2 mins read


The fastest way to make a tester invisible is to file bugs developers can't reproduce. After a few "works on my machine" closures, I rebuilt how I write reports.

The Title Is a One-Line Summary

Bad: Login broken Good: Login fails with 500 when email contains a '+' alias

The title should let a developer guess the subsystem before opening the ticket.

The Body: Six Fixed Fields

Environment: [build, OS, browser, account/role]
Preconditions: [exact state before the steps]
Steps: [numbered, reproducible, no "etc."]
Expected: [what should happen]
Actual: [what happened, with the error text]
Evidence: [screenshot/video/network log]

Steps People Can Actually Follow

The mistake is writing steps that assume context you already have. Every step should be runnable by someone who has never seen the feature:

  • Log in as a Standard user (not admin).
  • Go to Settings โ†’ Profile.
  • Enter taiab+test@gmail.com in Email.
  • Click Save.

Attach the Network Log, Not Just the Screenshot

A screenshot shows the symptom. The network request/response shows the cause. For that 500 error, the response body revealed the backend was treating + as a space and failing validation โ€” the developer fixed it in minutes because I handed them the payload.

Severity vs Priority

Keep them separate:

|---|---|
Meaning
SeverityHow bad is the impact? (data loss > cosmetic)
PriorityHow soon must it be fixed? (business call)

A typo on the landing page can be low severity but high priority before a launch.

Reproduce It Yourself First

Before filing, I reproduce on a clean session. If I can't reproduce it twice, the report says so explicitly โ€” intermittent bugs are real, but pretending they're deterministic just gets them closed.

Md. Taiab

Written by Md. Taiab

Follow

Md. Taiab is a Software QA Engineer and security enthusiast based in Dhaka, Bangladesh. He interned as a QA Engineer at Battery Low Interactive Ltd. and competes in CTFs and programming contests โ€” ranked Top 3% globally on TryHackMe and Champion of GUB Junior IDPC 2023.

Comments disabled โ€” add your CommentBox.io project ID to .env.local as NEXT_PUBLIC_COMMENTBOX_ID