A Gatling load test plugin for gRPC, enabling performance testing of gRPC services with Scala, Java, or Kotlin.
Gatling-gRPC is a load testing plugin for the Gatling framework that enables performance testing of gRPC services. It allows developers to simulate concurrent gRPC calls, measure response times, and identify bottlenecks in gRPC-based applications. The plugin integrates with Gatling's simulation engine to create realistic load scenarios for gRPC APIs.
Developers and performance engineers who need to load test gRPC services, particularly those using Scala, Java, or Kotlin in their tech stack.
It provides a specialized, expressive API for gRPC load testing within the Gatling ecosystem, offering dynamic payload generation and seamless session integration that simplifies creating complex test scenarios compared to generic HTTP load testing tools.
A Gatling load test plugin for gRPC
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Supports writing tests in Scala, Java, or Kotlin with a dedicated Kotlin binding, as demoed in the example project, accommodating diverse developer preferences.
Uses lenses and helper methods to generate dynamic protocol buffer objects, enabling flexible and realistic test scenarios, as shown in the unit tests.
Integrates with Gatling's session attributes for data-driven testing, allowing complex flow simulations with session data, detailed in the GrpcExample test.
Offers DEBUG and TRACE logging levels to monitor failed requests or all gRPC calls via logback.xml, aiding in effective debugging.
No longer maintained or updated, as Gatling Corp released its own gRPC plugin in Gatling 3.10, leading to potential compatibility issues and lack of new features.
Requires configuring protobuf code generation with build tools like SBT or Gradle, adding complexity compared to plug-and-play load testing tools.
Exclusively designed for gRPC, making it unsuitable for projects that need to test HTTP, WebSockets, or other communication protocols.