ホームページ >Java >&#&チュートリアル >PowerMock と Mockito を使用してプライベート メソッドを効果的にモックするにはどうすればよいですか?

PowerMock と Mockito を使用してプライベート メソッドを効果的にモックするにはどうすればよいですか?

Linda Hamilton
Linda Hamiltonオリジナル
2024-11-03 19:19:03300ブラウズ

How to Effectively Mock Private Methods with PowerMock and Mockito?

PowerMock を使用してプライベート メソッドをモックするための代替ソリューション

PowerMock を使用した最初に提案されたソリューションでは困難が発生しましたが、別のアプローチが成功したことが証明されています。 Mockito と PowerMock を組み合わせて使用​​すると、プライベート メソッドを効果的にモックできます。

提供されたコード スニペットに示されているように、CodeWithPrivateMethod クラスは、プライベート メソッド doTheGamble を呼び出すパブリック メソッド MeaningPublicApi を所有しています。 doTheGamble の動作を模擬するために、テスト クラス CodeWithPrivateMethodTest は PowerMock を使用して元のクラスのインスタンスを監視し、Mockito を使用して必要な戻り値を指定します。

この特定のシナリオでは、プライベート メソッド doTheGamble が呼び出されるとき、文字列および整数の引数を指定した場合は、true を返すように指示されます。これにより、パブリック メソッド MeaningPublicApi が RuntimeException をトリガーします。

完全なテスト構成は、PowerMock の @PrepareForTest アノテーションによって実行され、テスト対象のクラスがスパイの準備が整っていることが保証されます。テストは、静的メソッドとプライベート メソッドのモックを容易にする PowerMockRunner を使用して実行されます。

以上がPowerMock と Mockito を使用してプライベート メソッドを効果的にモックするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。