0
我测试了一个具有mapper/reducer作为内部静态类的MR类。映射器具有占用过多的内存,使测试失败了,我想用一个模拟对象为那场,但不知道如何做到这一点的私人领域,这里是我的代码:如何模拟一个类的内部静态类的私有字段
public class Aggregator extends Configured implements Tool {
public static class AggregatorMapper extends Mapper<LongWritable, Text, GeneralKey, Text) {
private LookupService lookupService = null; <--- the object i want to mock
}
}
我试着到mockito,但似乎没有办法嘲笑它。有什么建议么?谢谢!
如果该变量引用一个对象,它占用了太多的内存,那么你必须在后面的代码分配它。因此,在测试开始时用模拟替换它根本不会帮助你。你可以发布你的代码中实际分配了这个变量的部分,这样我们可以看到如何最好地帮助你? –