google/go-replayers

Go

442

90 commits

updated Sep 10, 2026

See the code

README

Build Status godoc Go Report Card

Go Tools for Recording and Replaying RPCs

This repo contains two tools for testing network clients by recording real interactions with servers, then playing back the server responses later. These record/replay proxies let you run an "integration" test that accesses a backend and record the interaction. Subsequent runs of the test can replay the server's responses without actually contacting the server, turning the integration test into a fast and inexpensive unit test.

To use a record/replay proxy:

  1. Write a test that interacts with an actual backend.
  2. Run the test using the proxy in record mode. The result will be a file of client-server interactions.
  3. Run the test again using the proxy in replay mode, pointing at the recorded file. The proxy accepts requests and replays the matching server responses.

httpreplay

The httpreplay proxy works with HTTP traffic. You can use the httpreplay package directly from Go code, or you can run the httpr command at httpreplay/cmd/httpr and use a client written in any language.

grpcreplay

The grpcreplay package works with gRPC traffic. There is no corresponding command.

google/go-replayers

Go

442

90 commits

updated Sep 10, 2026

See the code

README

Build Status godoc Go Report Card

Go Tools for Recording and Replaying RPCs

This repo contains two tools for testing network clients by recording real interactions with servers, then playing back the server responses later. These record/replay proxies let you run an "integration" test that accesses a backend and record the interaction. Subsequent runs of the test can replay the server's responses without actually contacting the server, turning the integration test into a fast and inexpensive unit test.

To use a record/replay proxy:

  1. Write a test that interacts with an actual backend.
  2. Run the test using the proxy in record mode. The result will be a file of client-server interactions.
  3. Run the test again using the proxy in replay mode, pointing at the recorded file. The proxy accepts requests and replays the matching server responses.

httpreplay

The httpreplay proxy works with HTTP traffic. You can use the httpreplay package directly from Go code, or you can run the httpr command at httpreplay/cmd/httpr and use a client written in any language.

grpcreplay

The grpcreplay package works with gRPC traffic. There is no corresponding command.

Project health

Overall

6.8/10

Maintained

4/10

Code review

5/10
OpenSSF Scorecard

Latest release

v1.5.1 · Sep 10, 2026

Releases this year

3

Significant stargazers

Ferhat Elmas

329 followers · starred May 2020

Olivier Mengué

175 followers · starred May 2026

Tony Han

403 followers · starred Aug 2019

Matthew Rothenberg

840 followers · starred Jul 2020