Composite stories of five bugs every QA team has met, all invisible on a fast laptop and all reproducible in ten seconds once you can slow the API on demand.
The pattern
These bugs hide because your local API answers in 20 ms.
A delay rule reproduces them on demand. Then you can fix them and keep the rule as a regression check.
Why these only show up "in the wild"
On a dev machine the API answers instantly, so the UI never spends time in its in-between states. Real users live in those states. These are composites of failures common enough that most teams will recognise them; none is a report of a specific incident.
20 ms
typical local API response
3 s+
where users start to tap again
1 rule
to reproduce all of them
Five horror stories
Works on my machine
๐ข
(20 ms API)
The slow-network user would like a word.
1. The double submit
A form button stays enabled while the request is slow. The user taps twice. Two orders. Reproduce: add a 5 s delay to the POST and tap twice.
2. The eternal spinner
The request fails but the error branch never clears the loader. Reproduce: force a 500 with a delay and watch whether the spinner ever leaves.
3. The out-of-order search
Typing "ab" then "abc": the "ab" response arrives last and overwrites the "abc" results. Reproduce: delay only the first request URL longer than the second.
4. The timeout nobody handles
The request never returns and the UI waits forever. Reproduce: a very long delay, then check for a timeout message and a retry.
5. The empty state that was never designed
A new account has no data and the page shows a blank white area. Reproduce: return an empty array.
Turn each story into a regression check
Save each delay or failure as a named rule. Before a release, enable the group, click through the flows, and disable it again. It takes minutes and it checks the states users actually meet.
Assume it breaks. Then prove it. The rule is the proof.
Frequently asked questions
How do I delay only one endpoint?
Create a rule that matches that URL pattern and set a delay in milliseconds. Other requests are untouched.
Vivek leads QA and owns how ProxyCeptor gets tested before it reaches you. He writes checklists, failure catalogues and cautionary tales about states nobody thought to test: the slow response, the empty list, the retry that retries forever. Expect deadpan humour, numbered lists and one item you did not see coming.