Как тестировать gRPC сервис?

Middle
635 просмотров
AFK Offer AI

Есть два основных подхода. Первый — использовать bufconn: создаёшь in-memory listener, регистрируешь gRPC-сервер на нём и подключаешь клиент через grpc.DialContext с bufconn dialer. Никакой реальной сети — всё в памяти, быстро. Второй — поднять реальный gRPC-сервер на случайном порту и подключиться клиентом. bufconn быстрее и не занимает порт. В обоих случаях зависимости сервиса можно мокнуть или использовать реальные для интеграционных тестов.

Следующий вопрос

Как Docker использует cgroups и namespaces?