我是apache storm的新手,我正在寻找测试螺栓的方法,而不是真正构建完整的拓扑。只是想避免模拟测试。相反,我试图调用bolt的方法来在OutputCollector对象中发出输出。但我试图找到一种从OutputCollector对象获取数据的方法,并且没有找到这样的方法。有什么办法可以简单地访问OutputCollector对象中发出的值吗?
答案 0 :(得分:1)
如果您仅从风暴角度进行测试,那么
的junit
会这样做。但是,如果您尝试从分布式计算的角度进行测试
mrunit
测试工具应该会有所帮助。
答案 1 :(得分:1)
测试螺栓逻辑的一种方法是编写FakeDataGeneratorSpout 它模仿拓扑的实际来源。构建测试主拓扑构建器类,可以使用FakeDataGeneratorSpout进行测试。
其次,您可以将bolt逻辑保存在简单的Java类中,并为它们编写junit,然后再从实际的bolt中调用该测试方法。