Every sandbox below is broken on purpose, and broken the same way every time — so you can find a defect, reproduce it, and write it up properly. Nothing here touches real data.
A deliberately broken storefront. Sign in as different personas — each one exposes a different, reproducible set of defects across login, sorting, images, and checkout.
A live REST API with tokens, pagination, validation and a few deliberately wrong status codes. Point Postman, curl, or your test framework at it and verify the contract.
A read-only SQL console over a seeded orders dataset with real data-integrity problems baked in. Write SELECTs to prove the data is broken.
Delayed loads, shifting IDs, alerts, iframes, drag & drop and a flaky button. Built for practising robust waits and selectors in Selenium, Playwright, or Cypress.
Ground rule: the bugs here are intentional. If something looks wrong, it probably is — your job is to prove it, not to work around it.