A fake HTTP server for integration testing with consumer-driven contracts and configurable erratic behavior, all from a YAML file.
Mockingjay Server is a tool that creates fake HTTP servers from YAML configuration files for integration testing. It allows developers to define contracts between services and validate them against real endpoints, ensuring reliable testing without false positives. It also simulates erratic behavior like delays or errors to test performance under realistic conditions.
Developers and DevOps engineers who need to test HTTP integrations, microservices, or API dependencies in a controlled environment without relying on live services.
It eliminates coding for mocks by using simple YAML configurations, provides consumer-driven contract validation to keep mocks and real services in sync, and includes configurable failure modes for comprehensive performance testing.
Fake server, Consumer Driven Contracts and help with testing performance from one configuration file with zero system dependencies and no coding whatsoever
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Runs as a standalone binary with no system dependencies, making deployment and usage simple across environments without additional setup.
Supports consumer-driven contracts by validating YAML configurations against real services via the -realURL flag, ensuring mocks stay accurate and prevent false positives.
Configurable 'monkey' settings allow introducing delays, errors, or garbage responses with specified frequencies, useful for performance and resilience testing.
Defines HTTP endpoints and responses in YAML without coding, enabling quick setup of fake servers for integration tests as shown in the example.
Provides a /requests endpoint to view all received requests in JSON format, aiding in debugging client interactions and verifying test flows.
Relies on static YAML files, which lack support for dynamic or stateful responses, limiting flexibility in complex testing scenarios that require conditional logic.
Focuses only on HTTP without mention of HTTPS, WebSockets, or other protocols, making it unsuitable for modern API testing beyond basic HTTP.
The README and examples reference 2015 with no clear indication of recent updates, raising concerns about maintenance and compatibility with current systems.
Does not include features for mocking authenticated endpoints, which could be a gap for teams testing secure APIs that require token-based or other auth mechanisms.