Emulating environment-dependent software faults
The interaction of software with its execution environment is an underestimated cause of complex faults activation and systems failure. This paper discusses a possible framework to emulate anomalous environment conditions in order to assess the impact of the execution environment on a software application under test. We discuss a characterization of the software's execution environment, introducing a classification of failure-exposing conditions of the environment state. Based on this, a set of possible environmental fault operators is introduced, aimed to assess the reaction of an application under unforeseen environment conditions. Practicability of the approach by means of existing fault injection and mutation testing technologies is discussed, along with future challenges and research directions.