2019.12.21JUnitのテストを行う際、Mock化したメソッドの戻り値がvoid型で、Mock化したメソッドが呼ばれたかどうかわからない場合がある。このような場合に、Mock化したメソッドの呼出回数や引数を取得することで、Mock化したメソッドの呼出確認が行える。実装が完了していること。JUnitでMockitoを利用して処理の一部をモック化してみたJUnitのテストを行う際、処理の一部をMock化してテストしたい場合がある。作成したサンプルプログラムの構成は以下の通り。上記の赤枠のうち、「DemoServiceImplTest2.java」が今回新規で作成したプログラムとなる。「DemoServiceImpl.java」は、前提条件の記事と変更していない。下記ソースでは、今回テスト対象とするcreateOrUpdateメソッドに関する部分のみを記載している。userData;}}さらに、今回作成したJUnitのプログラム「DemoServiceImplTest2.java」の内容は以下の通り。times((呼出回数))).(呼出メソッド名(呼出メソッドの引数))」という処理によって確認できる。ArgumentCaptor.forClass((引数のクラス名).class);」と宣言し、verifyメソッドの呼出メソッドの引数に「(オブジェクト名).capture()」を指定した後で、「(オブジェクト名).getAllValues()」を実行することで、設定された引数のリストが取得できる。今回作成したJUnitプログラムを実行した結果は以下の通りで、コンソールに、Mock化したメソッドの呼出回数と引数が表示される。要点まとめMock化したメソッドの呼出回数は、verifyメソッドにより取得できる。Mock化したメソッドの引数は、ArgumentCaptorクラスのオブジェクトにより取得できる。verifyメソッド呼出時にそのcaptureメソッドを指定した後で、そのオブジェクトのgetAllValuesメソッドを実行することで、設定された引数のリストが取得できる。ITエンジニアとして経験・学習したこと。