Octopet

The demo pet shop of OctoPerf. Each mode runs the same shop with one failure, under its own path: test a mode, then test fixed with the same script.

ModeWhat it breaksHTMLSingle-page
fixed Every failure fixed. /fixed/ /fixed/app/
slow-pool A connection pool too small, held during slow work. /slow-pool/ /slow-pool/app/
slow-search A search that slows down with the volume of orders. /slow-search/ /slow-search/app/
checkout-contention Checkouts waiting on a shared stock row. /checkout-contention/ /checkout-contention/app/
slow-payment A payment provider called without timeout. /slow-payment/ /slow-payment/app/
rate-limit A rate limit far too strict. /rate-limit/ /rate-limit/app/
memory-leak A journal of every request kept in memory, never trimmed. /memory-leak/ /memory-leak/app/
server-errors A product page that fails when the reviews do. /server-errors/ /server-errors/app/
heavy-pages Heavy images and a layout that shifts. /heavy-pages/ /heavy-pages/app/
script-errors A product page of the SPA that fails without its rating. /script-errors/ /script-errors/app/
broken Every failure, now and then. /broken/ /broken/app/

This instance serves at most 100 requests at once per mode, and 200 in all: past that, it answers 503 at once and asks to retry a second later. Size a test under it.

Admin: reset the database, see what the tests left.