Pandora is a high-performance load generator in Go language. It has built-in HTTP(S) and HTTP/2 support and you can write your own load scenarios in Go, compiling them just before your test.

Get started


How install Yandex Pandora


Pandora supports config files in YAML format.

Your first test

Architectural overview

Pandora is a set of components talking to each other through Go channels. There are different types of components.


Dummy generator

Dummy generator is used to check load profiles

gRPC generator

Configure gRPC generator

HTTP generator

Configure HTTP generator

Scenario generator / HTTP

Scenario generator / HTTP

Scenario generator / gRPC

Scenario generator / gRPC


Common scenario settings

Custom guns

Custom guns


HTTP Ammo providers

HTTP Ammo provider is a source of test data - it makes ammo object

JSON provider

JSON provider converts to Payload json files

Dummy Provider

Dummy provider is used for generators without external Payload.

Data Sources

To simplify the implementation of your custom generators

Load profile

It sets how the load will be changed and maintained.

Instance startup profile

How many instances you need, and how quickly they will be available to you



Best practices

Discard overflow

The setting includes the behavior of discarding overdue requests

RPS per instance

The setting allows you to change the rule for calculating the load profile

Use shared client

The setting allows you to reduce the number of open connections to the server

Pandora performance

Some performance tests for the gun itself