Overview
Discover how to implement in-app chaos testing to uncover potential issues in software development. Learn about the importance of testing scenarios beyond traditional unit and integration tests, such as third-party service failures, slow response times, and resource limitations. Explore real-world examples and techniques for breaking software without altering the codebase. Gain insights into Netflix's Chaos Monkey, Amazon Audible's case engineering, and how to scale down these concepts for smaller applications. Follow along with a practical demonstration of adding chaos to an example app, including implementing triggers, simulating slow services, and testing responsiveness. Understand the value of chaos testing in identifying and addressing potential problems early in the development process, ultimately leading to more robust and reliable software.
Syllabus
Introduction
Overview
Netflix
Chaos Monkey
Amazon Audible
Case Engineering
Scale it down
First situation
Second situation
Dealing with poor connectivity
The idea of chaos testing
Example app
Add packages
Add chaos
Triggers
Login view model
Services being slow
Overloads
Responsiveness
Running Application
LockService
Changing the data returned
Get Customers
Transform
Demo Time
Thoughts on integration
Taught by
NDC Conferences