QA Exercise 4

Exercise · Bug Hunt (Search & Pagination)

QA · Hands-on
Search, sort, and paginate a product list. Find and report defects in filtering, sorting, and paging using STR → Expected vs Actual → Severity/Priority → Recommendation.
Intentionally buggy: search is case-sensitive and trims the last character, sort labels don’t match results, page count off-by-one, next/prev sometimes skip a page, duplicates may appear after clearing search, result count desyncs.
0 results
Page 1 / 1
🎯 Instructions (Oral) task flow
  1. Search for cable, Adapter, and CAMERA (vary upper/lowercase). Observe which items match.
  2. Change sort orders; confirm if the list actually follows the label.
  3. Set per page to 5; browse to the last page and back. Note any skipped pages or off-by-one totals.
  4. Clear the search; check for duplicates and whether the result count matches the visible items.
  5. Present your spoken bug report: TitleSteps to ReproduceExpected vs ActualSeverity/PriorityRecommendation.
📖 Vocabulary definitions
  • filtering — narrowing a list to items that match criteria (e.g., a search term).
  • sorting — ordering results by a field (e.g., name ascending/descending).
  • pagination — splitting results across multiple pages.
  • off-by-one error — logic uses an index or count that is one too high/low.
  • case sensitivity — treating uppercase and lowercase letters as different.
  • debounce — delaying processing while the user types to reduce noise.
  • desync (desynchronization) — UI shows values that don’t reflect the true data state.
  • idempotent — an action that has the same effect no matter how many times you do it.
  • acceptance criteria — the conditions required for a feature to be considered done.
🧩 Collocations natural pairings
  • apply a filter / clear filters
  • toggle sort order / verify ordering
  • compute total pages / handle edge cases
  • avoid duplicates / deduplicate results
  • keep UI and state in sync
🗣️ Idioms & Phrasal Verbs natural speech
  • zero in on — focus precisely: “Zero in on items matching ‘cable’.”
  • line up — match correctly: “The sort label doesn’t line up with the ordering.”
  • fall out of sync — stop matching: “The count fell out of sync with results.”
  • edge out — slightly surpass: “One page edges out the total due to rounding.”
  • iron out — resolve: “We need to iron out pagination math.”
🎤 Model Answer (spoken style) example

Bug title: Search is case-sensitive and trims input; pagination total is off-by-one; sort label mismatches actual order; clearing search causes duplicates and desynced counts.

Steps to reproduce: First, search for Adapter and then adapter; results differ. Next, type camera and notice the last letter is ignored. Set page size to 5, go to the last page, then click Prev and Next; a page is skipped. Clear search and observe duplicated items and a result count that doesn’t match.

Expected result: Case-insensitive search with the full query; sort corresponds to its label; page totals accurate with no skipped pages; clearing search restores a deduplicated full list with a correct count.

Actual result: Search mismatches by case and truncates the last char; A→Z shows Z→A ordering; total pages display is off and navigation sometimes skips; clearing search can duplicate entries and the count is stale.

Severity / Priority: Major severity, P1 — core discovery features (search/sort/pagination) are unreliable and impact usability.

Recommendation: Normalize search to lowercase and use the full string; ensure sort comparators match labels; compute totalPages = Math.ceil(results / pageSize); make next/prev idempotent; rebuild the list from a single source of truth on clear; recompute counts from filtered data.