sensorloop
All sensors 32

Sensor ยท computational

Input and fault injection

Feeds the code generated inputs or broken dependencies, and reports the smallest case that makes it fail.

Type
computational
Signal
A minimal counterexample or crashing input, or a test that fails when a dependency is slow, down or wrong.
No illustration yet catalog/sensors/input-fault-injection.svg

Input and fault injection feeds the code generated inputs or broken dependencies, and reports the smallest case that makes it fail. Loops read it because it finds the cases nobody wrote down.

What it sees

How the code behaves on inputs and failures no one chose by hand. Its forms include property-based tests, fuzzing guided by coverage (often with runtime checks for memory errors), a fault proxy between a service and its dependencies, chaos experiments on a running environment, and a throttled CPU. It sees only the inputs it generated and the faults it injected: a run that finds nothing says little about the cases it did not reach.

Reading the signal

  • No failure found: nothing generated or injected broke the code within the run's budget. This is evidence, not proof.
  • A counterexample: the minimal input that breaks a property, or an input that crashed the code. Its seed or the saved input reproduces it.
  • A failure under a fault: a test that fails when a dependency is slow, down or wrong.

A minimised failing input becomes a regression test. A failure of the harness itself, such as a proxy that did not start or an environment that was unhealthy before any fault was injected, says nothing about the code.

Built from catalog/sensors/input-fault-injection.md.