Mockito の使用方法

Mockito の使用方法

Android Studio で Mockito を使用してテストする方法を記載します。

ここでは、以下のBookクラスをテストする方法を記載します。
普通にテストしようとすると new やstaticメソッドがあり、一見すると不可能なぐらい大変です。

さて、一見、難題に見えますが、Mockitoを使用すると比較的簡単にテストすることができます。

まずは、build.gradleに以下を追加します。

次に最も簡単なテストを書いてみます。

さて、ここまではOKだと思います。この次、一体どうすれば良いのか。
最初にPageクラスをモック化する必要があります。
しかし、PageクラスはBookクラス内部で生成されています。そこで、newをモック化(フック)してPageクラスをMock化したインスタンスを返すことにします。
また、Mock化したPageクラスを取得することができたので、続いて、Mock化されたインスンタンスのsetListenerを書き換えて、引数に設定されたListenerを保持しておきます。
これにより、自由にListenerを呼び出して試験することができます。
これで、99を設定して呼び出すことで、「page=99 style=1」という出力を試験することができました。

ここまでくれば、あとひとつ、styleのstaticメソッドもモック化(フック)してみます。

上記コードでは、Mockito.mockStaticを使用して、getStyle()関数を自由に書き換えて試験しています。

コメントを残す