1

内部静的クラスとしてマッパー/リデューサーを持つ 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
   }
}

私は嘲笑しようとしましたが、それを嘲笑する方法がないようです。助言がありますか?ありがとう!

4

1 に答える 1

0

リフレクションを使用して、任意のオブジェクトの任意のプロパティにアクセスして変更できます。SO に関するいくつかの質問がありますが、これにはすでに非常によく答えています。たとえば、次のとおりです。

于 2013-08-26T18:48:44.700 に答える