【发布时间】:2016-05-03 12:40:56
【问题描述】:
我有这样的火花工作:
stream.
..do some stuff..
map(HbaseEventProcesser.process)
现在 HbaseEventProcesser 是一个 scala 对象(单例)。所以,序列化没有问题。
问题在于测试该火花作业(使用了holdenkarau spark-test lib)。我想用其他一些实现来模拟 HbaseEventProcessor。我尝试了两种方法
- 将实现传递给 spark 作业(作为构造函数参数,而不是调用 map 内的方法)。这会导致序列化问题
- 使用 powerMock。不幸的是,如果使用 SharedSparkContext,deepcopy 操作会失败。
还有其他解决方法吗?
【问题讨论】:
标签: scala unit-testing apache-spark mockito