Joshua Owotogbe, Indika Kumara, Willem‐Jan van den Heuvel, Damian A. Tamburri
Organizations, particularly medium and large enterprises, typically rely heavily on complex, distributed systems to deliver critical services and products. However, the growing complexity of these systems poses challenges in ensuring service availability, performance, and reliability. Traditional resilience testing methods often fail to capture the intricate interactions and failure modes of modern systems. Chaos Engineering addresses these challenges by proactively testing how systems in production behave under turbulent conditions, allowing developers to uncover and resolve potential issues before they escalate into outages. Though chaos engineering has received growing attention from researchers and practitioners alike, we observed a lack of reviews that synthesize insights from both academic and grey literature. Hence, we conducted a Multivocal Literature Review (MLR) on chaos engineering to address this research gap by systematically analyzing 96 academic and grey literature sources published between January 2016 and April 2024. We first used the chosen sources to derive a unified definition of chaos engineering and to identify key functionalities, components, and adoption drivers. We also developed a taxonomy for chaos engineering platforms, capturing dimensions such as execution environments, automation modes, automation strategies, and deployment types. This taxonomy was then used to compare the relevant chaos engineering tools. The taxonomy enables organizations to align tool selection with their system and infrastructure architectures (e.g., microservices, Kubernetes, or serverless platforms) and resilience objectives, while providing researchers with a consolidated foundation for benchmarking tools and for future work such as mining open-source repositories and extending chaos engineering to AI-enabled systems. Finally, we analyzed the current state of chaos engineering research and identified several open research issues.