More posts

Framework

A Channel Is an Address, Not a Dropdown

Bundle availability was channel-driven, so I looked for a channel selector in the cart. There isn't one, by design — and the same mistake decides what belongs in a regression scope.

· 4 min read

Framework

The Oracle Is Usually Already Written Down

The expected results for a discount-gating story were already enumerated in a sibling story under the same epic — including a struck-out line that handed over an entire negative case.

· 4 min read

Framework

The Risk That Was Too Small to Raise

A requirement running a week late was ignored for three sprints and blocked the whole stream in the fourth. Why small risks never get raised, and what happens to the tester who raises them anyway.

· 4 min read

Framework

You Have Written This Test Case Before

New campaign bundles arrive every few sprints. The four test archetypes never change — only the promotion table does. That is a generator, not an authoring task.

· 4 min read

Field Notes

One Escape, Three Backlogs

A single Hypercare defect on a shared object needed fixes in three separate Jira spaces, and the only artefact tying them together was the originating Story. Then the same failure came back scored as Lowest.

· 3 min read

Framework

Which Record Do I Assert On Now?

After an amendment the original Order goes Superseded, a new Order carries the truth, and a fresh Orchestration Plan moves with it. Testing the old record is a silent false result.

· 3 min read

Framework

Stop Racing the System

Three defects, one mistake: the assertion landed on a state that was real but not final — an async close, a two-stage closure, and an API 200 followed by an auto-cancel.

· 3 min read