【发布时间】:2019-09-26 17:06:02
【问题描述】:
在 Java 中为 Apache Storm 拓扑编写集成测试的推荐方法是什么?感谢任何建议/链接。
【问题讨论】:
标签: java apache-storm apache-storm-topology
在 Java 中为 Apache Storm 拓扑编写集成测试的推荐方法是什么?感谢任何建议/链接。
【问题讨论】:
标签: java apache-storm apache-storm-topology
您可以使用 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。使用Testing 类中的工具,可以运行所有spout 都实现CompletableSpout 接口的拓扑,直到完成。
Storm 测试也可以选择“模拟时间”,这意味着 Storm 拓扑将空闲,直到您调用 LocalCluster.advanceClusterTime。例如,这可以让您在螺栓发射之间进行断言。
【讨论】: