Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/zalopay-oss/jmeter-grpc-plugin

A JMeter plugin supports load test gRPC
https://github.com/zalopay-oss/jmeter-grpc-plugin

benchmark grpc jmeter jmeter-plugin load-testing stress-testing test-grpc

Last synced: about 6 hours ago
JSON representation

A JMeter plugin supports load test gRPC

Awesome Lists containing this project

README

        

# JMeter gRPC Plugin

A JMeter plugin supports load test grpc service.

## Installation

```sh
$ mvn clean install

$ cp target/jmeter-grpc-client-sampler.jar path/to/jmeter/lib/ext
```

## Usage

> *Note*: Please read [example](./docs/example/README.md) first if you want to skip the step by step below

**Step 1.** Create a ***.jar** which contains java code generated from ***.proto** file and copy to `jmeter/lib/ext`.

*Example:*

```sh
$ cp hello.proto grpc-lib/src/main/proto/

$ cd grpc-lib && mvn package

$ cp target/grpc-lib-0.0.1.jar ../apache-jmeter-5.2/lib/ext/
```

**Step 2.** Create test plan :
* `TestPlan > Add > Thread (Users) > Thread Group`
* `Thread Group > Add > Sampler > GRPC Client Sampler`
* Config host, port, package, service... (see [more](docs/description.md))
* Save your test plan with name .jmx

*Example:* [hello.jmx](./docs/example/hello.jmx)



### Run

```sh
# view all command in jmeter
$ jmeter/bin/jmeter -h

# run load test
$ jmeter/bin/jmeter -n -t .jmx -l .csv

# generate report
$ jmeter/bin/jmeter -g .csv -o
```

### Report



## Acknowledgements

Thanks to @A1Darkwing (Thanh Tran), @anhldbk (Anh Le), @VoxT (Thieu Vo) who dedicated to help me review and refactor the source code of project.

If you would like to work with the simple request by json, see [jmeter-grpc-request](https://github.com/zalopay-oss/jmeter-grpc-request)