grafana/k6

Run tests in separate process so that we actually test loading proto definitions at runtime

Offen

#3.552 geöffnet am 05.07.2023

 (4 Kommentare) (0 Reaktionen) (1 zugewiesene Person)Go (1.537 Forks)batch import
area: grpccihelp wantedteststriage

Repository-Metriken

Stars
 (30.564 Sterne)
PR-Merge-Metriken
 (PR-Metriken ausstehend)

Beschreibung

Originally raised in this comment by @thiagodpf.

What?

The current unit tests run the server and clients in the same process.

gRPC seems to have a global registry for types, so once the server loads them, the client doesn't need to.

This means that all tests that test that clients actually manage to load types correctly only with .proto files are not actually testing that :(

Solutions:

Preferably go test ./... should run the unit tests with the server and client as separate process - preferably even separate from the main go test one :thinking:

This sounds involved.

A quicker solution will be to have another CI step that runs a server + k6 run script.js exercising the most common cases.

Both will be best.

Contributor Guide