2017年3月16日木曜日

Unitテスト Mockito、PowerMockitoで、Staticメソッドをモック

こんにちは。

前回に続いて、UnitテストでMockito、PowerMockitoを使います。

今回は、Staticメソッドをモックします。例として、設定クラスのSharedPrefrencesクラスをあげます。


Build.gradleの設定は、前回のページを参照してください。
まずは、import部分です。


続いて、import部分以外を載せます。


細かく見ていきます。クラス宣言部分に、アノテーション「@RunWith(PowerMockRunner.class)」と「@PrepareForTest({PreferenceManager.class})」を付けています。
前者は前回も付けましたが、後者はPreferenceManagerクラスのStaticメソッドをモックするために付けます。



そして、以下の部分で、PreferenceManagerクラスのStaticメソッドgetDefaultSharedPreferencesをモックしています。



whenに指定する関数の引数は、以下のように、anyString、anyBooleanなどを指定できます。これは、String型の何か、Boolean型の何かを意味します。


少し、はまったのがgetStringのモックですが、ActivityからgetStringするようにし、テストは以下のようにしました。



0 件のコメント:

コメントを投稿