推荐使用Java为Apache Storm拓扑编写集成测试的推荐方法是什么?感谢任何建议/链接。
您可以使用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
。例如,这可以让您在两次螺栓发射之间进行断言。