Написание интеграционных тестов для Apache Storm - PullRequest
1 голос
/ 26 сентября 2019

Каков рекомендуемый способ написания интеграционных тестов для топологии Apache Storm в Java?Ценю любые предложения / ссылки.

1 Ответ

0 голосов
/ 26 сентября 2019

Вы можете использовать LocalCluster для интеграционного тестирования.Взгляните на этот класс https://github.com/apache/storm/blob/822a4685c0278aba9d4e0f43104bc4f86a462222/storm-server/src/main/java/org/apache/storm/LocalCluster.java#L119

Вы можете посмотреть на некоторые из собственных интеграционных тестов Storm, например https://github.com/apache/storm/blob/e0feb6cf04107029d4b24420f265495cdfbdb098/storm-server/src/test/java/org/apache/storm/TestingTest.java#L38.

Инструменты, которые вы, возможно, захотите использовать, это FeederSpout и FixedTupleSpout.Топология, в которой все сопла реализуют интерфейс CompletableSpout, может быть запущена до завершения с использованием инструментов класса Testing.

В штормовых тестах можно также выбрать «имитацию времени», что означает, что топология Storm будет простаивать доВы звоните LocalCluster.advanceClusterTime.Это может позволить вам делать утверждения между выбросами болта, например.

...