Bug Report Writing | Essential Components Guide
Write bug reports developers can quickly fix with reproduction steps, expected vs actual behavior, and environment details. GitScrum templates ensure consistency.
5 min read
Effective bug reports contain the information developers need to reproduce, understand, and fix issues quickly. GitScrum's bug tracking features help teams standardize bug reporting, ensure consistent information capture, and streamline the path from report to resolution.
Bug Report Structure
Essential Components
BUG REPORT TEMPLATE:
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β TITLE: [Action] causes [Problem] in [Area] β
β Example: "Clicking 'Save' causes data loss in profile" β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ€
β β
β SEVERITY: π΄ Critical / π High / π‘ Medium / π’ Low β
β β
β ENVIRONMENT: β
β β’ Browser/Device: Chrome 120, Windows 11 β
β β’ App Version: 2.4.1 β
β β’ Account Type: Premium user β
β β
β STEPS TO REPRODUCE: β
β 1. Navigate to Settings > Profile β
β 2. Change display name to "Test User" β
β 3. Click "Save" button β
β 4. Observe error message β
β β
β EXPECTED BEHAVIOR: β
β Profile should save and show success message β
β β
β ACTUAL BEHAVIOR: β
β Error "Save failed" appears, changes are lost β
β β
β ATTACHMENTS: β
β β’ [Screenshot of error] β
β β’ [Console log] β
β β’ [Network request capture] β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
Severity Guidelines
BUG SEVERITY LEVELS:
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β LEVEL β CRITERIA β RESPONSE β
βββββββββββββΌββββββββββββββββββββββββββββββΌββββββββββββββββββββ€
β π΄ Criticalβ β’ App unusable β Fix immediately β
β β β’ Data loss β Same day release β
β β β’ Security vulnerability β β
βββββββββββββΌββββββββββββββββββββββββββββββΌββββββββββββββββββββ€
β π High β β’ Major feature broken β Fix this sprint β
β β β’ Workaround difficult β Priority queue β
β β β’ Many users affected β β
βββββββββββββΌββββββββββββββββββββββββββββββΌββββββββββββββββββββ€
β π‘ Medium β β’ Feature degraded β Schedule in β
β β β’ Workaround exists β upcoming sprint β
β β β’ Some users affected β β
βββββββββββββΌββββββββββββββββββββββββββββββΌββββββββββββββββββββ€
β π’ Low β β’ Minor inconvenience β Backlog β
β β β’ Cosmetic issue β Fix when possible β
β β β’ Rare occurrence β β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
Quality Bug Reports
Reproduction Steps
GOOD REPRODUCTION STEPS:
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β
β β
GOOD: β
β 1. Log in as user "test@example.com" β
β 2. Navigate to Dashboard > Reports β
β 3. Select date range: Jan 1 - Jan 31, 2024 β
β 4. Click "Generate Report" β
β 5. Wait for report to load (about 5 seconds) β
β 6. Click "Export PDF" β
β Result: Error "Export failed" appears β
β β
β β BAD: β
β "PDF export doesn't work" β
β β
β β ALSO BAD: β
β "Go to reports and try to export" β
β β
β TIPS: β
β β’ Be specific about actions β
β β’ Include any required data β
β β’ Note timing if relevant β
β β’ Mention if it's intermittent β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
Supporting Evidence
HELPFUL ATTACHMENTS:
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β TYPE β WHEN TO INCLUDE β
βββββββββββββββββββββΌβββββββββββββββββββββββββββββββββββββββββ€
β Screenshot β Visual bugs, error messages β
β Video recording β Complex interactions, timing issues β
β Console logs β JavaScript errors, warnings β
β Network capture β API failures, slow requests β
β Error logs β Server-side issues β
β HAR file β Full network trace β
β Sample data β Data-specific bugs β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
IN GITSCRUM:
β’ Drag and drop attachments to task
β’ Link to screen recordings
β’ Paste images directly in description
β’ Attach log files
Bug Workflow
Bug Lifecycle
BUG STATUS WORKFLOW:
ββββββββββ ββββββββββ ββββββββββ ββββββββββ ββββββββββ
β New ββ β Triage ββ β Fixing ββ β Testingββ β Closed β
ββββββββββ ββββββββββ ββββββββββ ββββββββββ ββββββββββ
β β β β β
β β β β β
β β β β β
Submitted Prioritized Assigned Verified Released
& assigned developer fix works
POSSIBLE TRANSITIONS:
β’ Triage β Closed (Not a bug / Won't fix / Duplicate)
β’ Testing β Fixing (Fix didn't work, reopen)
β’ Any β Closed (Won't fix with explanation)
Bug Triage Process
TRIAGE MEETING CHECKLIST:
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β
β FOR EACH NEW BUG: β
β β
β 1. VALIDATE β
β β‘ Is it reproducible? β
β β‘ Is it a duplicate? β
β β‘ Is it actually a bug (not feature request)? β
β β
β 2. ASSESS β
β β‘ What's the severity? β
β β‘ How many users affected? β
β β‘ Is there a workaround? β
β β
β 3. PRIORITIZE β
β β‘ Where does it fit in backlog? β
β β‘ Should it interrupt current work? β
β β‘ Which sprint to schedule? β
β β
β 4. ASSIGN β
β β‘ Who has context? β
β β‘ Who has capacity? β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ