← Back to sample work

Sample work

Test cases and bug reports, on an app anyone can open.

My day-job test artifacts are confidential, so this page shows how I plan, execute and report testing against SauceDemo, a public training app that ships defects on purpose. Every result below comes from a real execution on 18 October 2026 (desktop Chrome, 1280x720). The same flows pass on the standard account, which is the control that makes the failures worth reporting. The full 24-case set, test plan and exploratory notes live in the qa-portfolio repo.

11

Cases executed

7

Passed

4

Defects reproduced

Execution record

IDTest caseExpectedAccountActualStatus
TC-LOG-001Login with valid credentialsRedirected to /inventory.html, 6 products shownstandard_userOn /inventory.html, 6 products shownPASS
TC-LOG-002Locked-out account is rejectedStays on login page with a locked-out errorlocked_out_userError shown: "Epic sadface: Sorry, this user has been locked out."PASS
TC-INV-002Product images are distinct and loadEach product shows its own, non-broken imagestandard_user6 distinct imagesPASS
TC-INV-003Sort by price, high to lowMost expensive product first ($49.99)standard_user$49.99 firstPASS
TC-CART-001Add all products to cartCart badge shows 6, buttons switch to Removestandard_userBadge 6PASS
TC-CHK-001Checkout information accepts valid inputFields keep their values, advance to the overviewstandard_userValues kept ("Dani" / "Hamdani"), on the overview pagePASS
TC-CHK-004Finish orderOrder confirmation shownstandard_userConfirmation shown: "Thank you for your order!"PASS
TC-INV-002Product images are distinct and loadEach product shows its own, non-broken imageproblem_userAll 6 products render the same placeholder imageBUG-001FAIL
TC-CART-001Add all products to cartCart badge shows 6, buttons switch to Removeproblem_userBadge stops at 3; 3 of 6 buttons never respondBUG-002FAIL
TC-INV-003Sort by price, high to lowMost expensive product first ($49.99)problem_userOrder unchanged, first price still $29.99BUG-003FAIL
TC-CHK-001Checkout information accepts valid inputFields keep their values, advance to the overviewproblem_userLast Name input writes into First Name; blocked with "Error: Last Name is required"BUG-004FAIL

Bug reports, filed like tickets

All four reproduced defects, written the way I file them at work: severity, priority, environment, exact steps, expected vs actual, evidence. Pick a ticket to open it.

SAUCEDEMO-QA/BUG-002BugReproduced

Half the catalog cannot be added to the cart

Steps to reproduce

  1. Log in as problem_user.
  2. Click "Add to cart" on each of the 6 products, one at a time.

Expected

Every click adds the item: the cart badge increments and the button switches to "Remove" (verified on standard_user, where all 6 work).

Actual

Bolt T-Shirt, Fleece Jacket and Test.allTheThings() T-Shirt (Red) do nothing: the badge stays, the button keeps saying "Add to cart", and the item never reaches the cart. The other 3 add correctly (badge reaches 3).

Inventory page as problem_user: 3 items added, 3 buttons unresponsive
Badge stuck at 3 while the 4th product is clicked.
Order confirmation on the standard account: Thank you for your order!
The control: the same checkout flow passes on standard_user.

← Back to selected work·Try it yourself: break this app →