В статье рассматривается тестирование unary gRPC сервисов на Go.
Конечно, лучше тестировать бизнес-логику напрямую, без gRPC, но иногда необходимо проверить полный стек: обработку статус-кодов, интерсепторы, дедлайны, метаданные и структурированные ошибки. Для этого предлагается использовать bufconn - in-memory listener из библиотеки gRPC, который позволяет поднять реальный сервер и клиент внутри тестового процесса без использования TCP-сокетов.
В статье на примере сервиса BookStore демонстрируются два подхода: прямое тестирование хендлеров с фейковым хранилищем и тестирование через bufconn. Второй подход незаменим для проверки интерсепторов, проброса дедлайнов и метаданных, а также корректной сериализации расширенных ошибок
01.04.2026
Похожее
14.08.2026
Soppo
Пятничный язык программирования! Я про него уже писал, но он продолжает развиват...
12.08.2026
Typescript Defer
Автор экспериментировал с добавлением оператора defer из Go в компилятор TypeScr...
11.08.2026
Raft сломан
Ребята из Antithesis(я хз кто это) протестировали несколько популярных реализаци...
11.08.2026
Движение назад
Прикольная статья если вы хотите поковыряться в итераторах, джинериках и вот в э...