61 releases

0.18.0 Feb 25, 2025
0.17.2 Aug 28, 2023
0.17.0 Dec 9, 2022
0.16.4 Sep 20, 2022
0.1.0 Oct 23, 2017

#46 in Testing

Download history 9154/week @ 2024-11-19 12269/week @ 2024-11-26 18330/week @ 2024-12-03 19750/week @ 2024-12-10 13844/week @ 2024-12-17 3432/week @ 2024-12-24 6143/week @ 2024-12-31 16396/week @ 2025-01-07 15720/week @ 2025-01-14 16743/week @ 2025-01-21 17579/week @ 2025-01-28 19317/week @ 2025-02-04 20444/week @ 2025-02-11 13110/week @ 2025-02-18 12998/week @ 2025-02-25 19707/week @ 2025-03-04

69,537 downloads per month
Used in goose-eggs

Apache-2.0

5.5MB
13K SLoC

Goose: A Powerful Load Testing Framework

What is Load Testing?

Load testing is a critical step in ensuring your web application can handle real-world traffic patterns. It helps you identify performance bottlenecks, optimize resource allocation, and ensure a seamless user experience.

Why Choose Goose?

  • Fast and Scalable: Built with Rust, Goose is designed for speed and scalability.

  • Flexible and Customizable: Supports simple and complex load tests, tailored to mimic real-world user behavior.

  • Realistic User Behavior Simulation: Goes beyond just sending requests; simulates user behaviors like logging in, filling out forms, and navigating through your application.

  • Have you ever been attacked by a goose?

Getting Started

To use Goose, you'll need to write a Rust application using the Goose library. Then, compile it to create a tailored load testing tool specific to your needs.

You may find the following resources helpful:

Simple Example

Check out our examples on GitHub. You can also use Goose Eggs, a helper crate that provides useful functions for writing load tests, such as validation helpers for HTTP responses.

Community and Support

Developed by Tag1 Consulting, Goose has a growing community and a series of blog posts and podcasts detailing its features, comparisons with other tools, and real-life testing scenarios.

crates.io Documentation Apache-2.0 licensed CI

Dependencies

~15–31MB
~505K SLoC