Fault injection
Fault injections test a system by throwing errors at it and see how it behaves under failure conditions. It allows to test its resilience and find weak spots.
Software-based injections will find bugs in the code and corrupt memory.
Hardware-based injections will typically test the system by applying high voltages, extreme temperature, electromagnetic pulses on physical components, etc.