Добрый день, дорогие друзья! Вы мне подскажите мне пару проверенных

решений (или ссылку на статьи, решения из которых вы сами использовали), как правильно и надёжно проводить тестирование микросервиса, взаимодействующего с окружением других микросервисов через Kafka? Нужно ли поднимать стенд, писать заглушки или достаточно в юнит тестах замокать продюсеров и консюмеров?

18 ответов

22 просмотра

один из подходов - тестконтейнеры, в которых подымается кафка, с которой работают тесты

Denis Pavlyuchenko
один из подходов - тестконтейнеры, в которых подым...

то есть тестовый стенд докер-контейнеров под управлением докер композа, с кафкой, микросервисом, БД. В котором тестовые данные в микросервис будут подаваться из кафки. Я правильно понял, что вы имели в виду?

Галоперидоловый Странник🇭🇳
то есть тестовый стенд докер-контейнеров под управ...

ну.. чутка проще. Тестконтейнеры (если не клауд версия) запускаются локально - или на машине разраба, или в CI. То есть, нет какого-то отдельного стенда.

Галоперидоловый Странник🇭🇳
ок)) загуглю. спсб

https://www.testcontainers.org/ у них сайт свой с доками

Галоперидоловый Странник🇭🇳
ок)) загуглю. спсб

Главная ошибка джуна. Надо сначала гуглить ,потом спрашивать

Mikhail
Главная ошибка джуна. Надо сначала гуглить ,потом ...

"чё ты сидишь колупаешься, надо было спросить, давно бы уже сделал" (с) продакт

Testcontainers. Я ещё делал доклад про тестирование. И @ivan_ponomarev тоже делал. Надо искать видосы в Кафка саммита

Vik Gamov
Testcontainers. Я ещё делал доклад про тестировани...

а как же тестировать функциональность в продакшене ?)

Искать на youtube по запросу "Viktor gamov kafka testing"

Наш с Джоном доклад в первую очередь про тестирование Kafka Streams, но в целом про боль тестирования «настоящей» Кафки (ожидание доставки сообщений в асинхронных тестах) там есть https://youtu.be/S_73iXJ50Yc

Главный головняк, если вы решитесь тестировать через «настоящую» кафку: если вас не пришли сообщения, вы никогда не можете понять, они не пришли потому, что вы мало ждали, или они не пришли потому, что их и не будет больше. Если этот момент понимать, можно выстроить сбалансированную стратегию

Похожие вопросы

Обсуждают сегодня

Но, может, есть уже проверенная? Наши требования такие: 1. Сообщения должны приходить из Инста в CRM оду 2. Должна быть возможность подключить несколько экаунтов Инстаграм. Р...
Alexander Sharoiko MSE / Александр Шаройко
7
Я правильно понимаю что нет способов получить список ожидающих заявок на вступление в группу с помощью бота из mtproto?
Шамиль Прилов
7
Это может быть все-таки не флудвейт? у меня ботфазер принимает изменения и отображает даже что они изменились, на видео видно что он прислал якобы уже измененное описание, н...
OVERLINK
13
Добрый день. Мне посоветовали обратиться к вам в чат за помощью. Ситуация описана на скрине. Как мне сказали, мне на бота навесили флудвейт. Есть ли возможность снять его ра...
OVERLINK
7
всем привет помогите пожалуйста используя CDN (GCP) у игроков из вьетнама загружается конфиг (размер 999 bytes) загружается 5 и более минут н а других CDN сервисах такой пробл...
Andrew Krw.
1
Просто по очереди выпиливаешь на ручной маппинг? По методу за раз
Andrii Kurdiumov
7
)) может, нужно поправить? )) 2. Ребята, нам нужно, чтобы сообщения из Инстаграм приходили в ОДУ. Какое приложение посоветуете?
Alexander Sharoiko MSE / Александр Шаройко
1
Приветствую. А не подскажете какие ограничения есть на использования api метода setMyName ? Несколько раз сменил имя бота и получил бан на 2 месяца на смену имени.
Slick Slack
8
Всем привет! Взялся портировать модули на 18 версию, лезет _logger.log(log_level, 'no translation language detected, skipping translation %s', frame, stack_info=True) А чт...
Max Lit
3
Привет, коллеги! Возникла задача ограничить максимальный размер вложений для определённых расширений, например, чтобы для изображений лимит был 10 МБ, а для видео — 100 МБ. Ог...
Andro
1
Карта сайта