2011-10-09 12 views
8

minInvocationまたはmaxInvocationはMockitoのtimes()と同じだとは思わない。ある?JMockItのtimes()に相当しますか?

この質問を参照してください:Major difference between: Mockito and JMockIt

誰もが、まだ回答されていません。

編集

私は自分自身に答えるが見つかりました:これは答え必要他人のためにそれをここに追加:

ソリューションはDynamicPartialMockingを使用して、期待のコンストラクタにオブジェクトを渡すことですかNonStrictExpectationsを呼び出し、そのオブジェクトの関数を呼び出しません。

続いた検証セクションでは、値は、あなたが

new NonStrictExpectations(Foo.class, Bar.class, zooObj) 
{ 
    { 
     // don't call zooObj.method1() here 
     // Otherwise it will get stubbed out 
    } 
}; 


new Verifications() 
{ 
    { 
     zooObj.method1(); times = N; 
    } 
}; 
+1

をしたい値は、あなたが答えとして答えを追加することができます(とそれを受け入れる) - 質問の編集の代わりに?この方法では、「未回答」バケットに表示されませんか? –

答えて

3

をしたい=あなたが呼び出しの数を測定し、時間を設定するオブジェクト上の任意の関数を呼び出す私は自分自身が答えを見つけた。それをここに追加しますこれを必要とする他の人には:

解決策は、DynamicPartialMockingを使用してオブジェクトをExpectationsまたはNonStrictExpectationsのコンストラクタに渡し、そのオブジェクトの関数を呼び出さないことです。

続いた検証セクションでは、あなたが呼び出しの数を測定し、時間を設定するオブジェクト上の任意の関数を呼び出す=あなたは

new NonStrictExpectations(Foo.class, Bar.class, zooObj) 
{ 
    { 
     // don't call zooObj.method1() here 
     // Otherwise it will get stubbed out 
    } 
}; 


new Verifications() 
{ 
    { 
     zooObj.method1(); times = N; 
    } 
}; 
+0

ほとんどの場合、部分的な嘲笑を使う必要はありません。代わりに、 '@ Mocked'、' @ NonStrict'などの注釈を使って、擬似フィールドやモックパラメータを宣言して、 "通常の"モッキングを使用してください。 –

関連する問題