A modern cross-platform HTTP load-testing tool written in Go, supporting multiple modes and metric exports.
Cassowary is a modern, cross-platform HTTP load-testing tool written in Go that simulates concurrent user traffic to evaluate web service performance. It helps developers, testers, and sysadmins identify bottlenecks and ensure reliability under load by providing detailed metrics and visualizations. The tool supports various testing modes, flexible metric exports, and integrates seamlessly into CI/CD pipelines.
Developers, QA engineers, and system administrators who need to performance-test HTTP/S services, especially those working in DevOps or CI/CD environments.
Cassowary offers a single binary with zero dependencies, cross-platform support, and multiple export options (Prometheus, CloudWatch, JSON), making it easier to integrate into existing monitoring stacks compared to more complex alternatives.
:rocket: Modern cross-platform HTTP load-testing tool written in Go
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Cassowary offers a single pre-built binary for Linux, Mac, and Windows with no dependencies, making installation and deployment straightforward across different operating systems.
Results can be exported to JSON files, Prometheus PushGateway, and AWS CloudWatch, allowing seamless integration into existing monitoring and CI/CD pipelines as highlighted in the README examples.
Distributed load testing is simplified through Kubernetes job configurations, enabling easy scaling across multiple machines without complex setup, as demonstrated in the provided YAML snippet.
The tool generates histograms and boxplots in PNG format directly from command-line flags, providing clear visualizations of request duration distributions without external tools.
Unlike competitors like k6, Cassowary lacks support for JavaScript or advanced scripting for dynamic test generation, restricting it to static requests or file-based inputs.
The Go library module is not yet stable; the README explicitly warns that backwards compatibility may break until v1.0.0, posing a risk for programmatic use in production.
Cassowary focuses solely on HTTP/S and does not support testing for modern protocols like WebSocket or gRPC, limiting its utility for full-stack or real-time application testing.