Unit and component
Behaviour of one unit with its collaborators replaced. Fast enough to run on every change.
Not a phase after development, and not a larger end-to-end suite. A set of checks placed where the risk actually lives.
If two layers assert the same thing, one of them is waste or a lie.
Behaviour of one unit with its collaborators replaced. Fast enough to run on every change.
The promise between producer and consumer, checked before a downstream system has to fail.
A real boundary, with controlled data. Not the entire company in one fixture.
A few journeys that prove the product holds together, plus human exploration where a script would only repeat itself.
We use these words precisely. A label without a decision is decoration.
Does the change do what was agreed, and did it break a promise already in production?
Can people operate it, and did the interface move in a way a screenshot would catch?
Only when a capacity or latency risk is real. A load test aimed at vanity is still waste.
Abuse cases, permissions, and the behaviour of the system when a dependency is late or wrong.
Not a promise of zero defects. A promise that the next defect is cheaper to see.
Requirement gaps show up in examples and contracts, not in a Friday incident.
A failure points at a layer. People stop rerunning the whole suite to feel busy.
The open risks are listed. The checked risks are listed. Nothing is implied.
No. The risk decides. A layer without a question is cost.
No. It is a way to talk about feedback speed and cost. Some systems need a different shape, and we say so.
In the engineering intelligence practice: visible history, a quarantine with an expiry, and a person who verifies the fix.
We will tell you whether the problem is scope, data, environment, or a missing layer.