La inyección de fallas es una técnica utilizada en las pruebas de software . Implica la introducción artificial de varios tipos de fallas para probar la tolerancia a fallas y, en particular, el manejo de excepciones . Por lo general, se usa junto con las pruebas de estrés .
La tecnología de inyección de fallas se remonta a la década de 1970 , cuando se utilizó por primera vez para generar errores de hardware [1] . Este tipo de inyección de fallas se denomina Inyección de fallas implementadas por hardware (HWIFI) y simula una falla de hardware en el sistema. Al principio, introducir fallas en el hardware se limitaba a cerrar contactos en placas de circuito impreso y observar la respuesta del sistema. Se utilizaron principalmente para probar la fiabilidad funcional (confiabilidad) del sistema. Más tarde, para expandir esta tecnología, se desarrollaron equipos especializados, por ejemplo, irradiando ciertas áreas de una placa de circuito impreso con una fuerte radiación. Pronto se descubrió que el software podía introducir errores, y tales técnicas podían ser útiles para evaluar los sistemas de software. En conjunto, estas tecnologías se conocen como Inyección de fallas implementadas por software (SWIFI).