Study the scenario below, then fill in the full defect report template. Click Get AI feedback to have the Testing Guru review your report, or Compare with sample to see a model answer.
Learning: Defect Reporting
🎯 Scenario — Waitomo Glowworm Caves Booking
You are testing the online booking system for Waitomo Glowworm Caves. A customer selects a tour date, enters the number of adults and children, clicks “Proceed to Payment,” and the page shows a spinner for 5 seconds before returning to the booking form with no error message and no payment screen.
What you know so far:
- The bug happens only when 1 or more children are selected. Adults-only bookings work fine.
- It reproduces in Chrome 120 and Edge 120 on Windows 11. Firefox 121 works correctly.
- The browser console shows
TypeError: childPrice is undefinedwhen the spinner appears. - The booking reference is never created — the admin panel shows no new entry.
- Approximately 35% of bookings include children, and this is peak summer season.
Your task: Write a complete defect report that a developer could pick up and fix without asking you a single question.
✏ Defect Report Template
Fill in every field. Imagine the developer is in another city and has never seen this bug before. Give them everything they need.
✅ Sample Answer
| Summary | Booking form silently fails on Chrome/Edge when children are selected, blocking 35% of bookings |
|---|---|
| Description | On the Waitomo Glowworm Caves booking page, selecting any number of children and clicking "Proceed to Payment" causes a silent failure. The page shows a spinner for ~5 seconds, then returns to the booking form with no error message and no payment screen. The JavaScript console reveals a TypeError. Because approximately 35% of bookings include children and this is peak summer season, this directly impacts revenue. |
| Steps to Reproduce | 1. Navigate to https://waitomo.example.co.nz/book 2. Select any future tour date from the calendar 3. Enter Adults = 2 4. Enter Children = 1 5. Click "Proceed to Payment" 6. Observe the spinner and the return to the booking form |
| Expected Result | The payment page loads displaying the correct total price (adult tickets + child tickets). A booking reference number is generated and appears in the admin panel. |
| Actual Result | The page displays a loading spinner for approximately 5 seconds, then returns to the booking form. No error message is shown to the user. The browser console shows: TypeError: childPrice is undefined. No booking reference is created and the admin panel shows no new entry. |
| Environment | Chrome 120.0.6099.130 (64-bit), Windows 11 Pro, 1920×1080. Also reproduces on Microsoft Edge 120. Does NOT reproduce on Firefox 121.0 (64-bit) on the same machine. Reproduced on two separate customer accounts and in Incognito mode. Wi-Fi and ethernet tested. |
| Severity | High — a major booking flow is completely broken for a significant user segment (child-inclusive bookings). No workaround exists for customers. |
| Priority | High — peak summer season is active and 35% of bookings include children. Lost revenue is immediate and measurable. |
| Attachments | 1. chrome-console-error.png (screenshot of TypeError: childPrice is undefined) 2. waitomo-child-booking-fail.mp4 (screen recording from step 1 to failure) 3. network-tab-chrome.har (HAR export showing the failed XHR request) |
Key differences from a weak answer: Precise browser versions, exact reproduction data, console error quoted verbatim, business impact quantified (35%), cross-browser testing noted, and severity/priority justified with facts rather than emotion.
💡 What the AI will look for
- Title: Does it mention the feature, failure, and trigger in one sentence?
- Reproducibility: Could a stranger follow your steps and see the same bug?
- Environment: Are browser versions, OS, and viewport specified? Is "does not reproduce" data included?
- Objectivity: Is severity based on business/user impact, not personal frustration?
- Completeness: Are all eight fields filled with specific, non-vague information?