Filibuster: The development-first approach to resilience.
Filibuster is built to empower developers with the capability to assess the fault tolerance and resilience of their microservice application by injecting faults. It integrates with popular testing frameworks like JUnit and JaCoCo, allowing developers to reuse existing tests and incorporate resilience testing into their CI/CD pipelines.
Filibuster supports injecting faults in inter-service communication over HTTP and gRPC, as well as in a range of SQL and NoSQL databases. The supported databases include Redis (Lettuce), DynamoDB, CockroachDB, Cassandra, and PostgreSQL.
Start testing for reliability early and often by synthesizing tests from the tests your developers are already writing.
In three steps to more resilient microservice applications:
Developers write standard integration and functional tests
Filibuster automatically synthesizes test variations where faults are injected into the application
Developers update tests to assert the correct behavior under fault
Filibuster in action on a Java application written in Armeria with JUnit.
Demonstration of the Filibuster JUnit/IntelliJ integration for visual fault injection debugging.
Using Filibuster to inject faults in database clients.
Learn about the peer-reviewed research behind the Filibuster fault injection technique.
Learn more about Filibuster: http://filibuster.cloud
Licensed under the Apache License, Version 2.0. (rt/LICENSE or https://www.apache.org/licenses/LICENSE-2.0).