0
私はAndroidアプリ用のJUnitテストをいくつか作成しようとしています。JunitテストのMockingアンドロイドメソッド
public void checkBoxAction(View v) {
CheckBox cb = (CheckBox) v;
Boolean isChecked = cb.isChecked();
//Do stuff
}
私はMockitoを使用していますが、私はこれまでのところ持っている:私は、私がしようとしています以下の方法は、検査を受けるためにしているアプリで
// ...
CheckBox dummyV = new CheckBox(mMockContext);
Mockito.when(dummyV.isChecked()).thenReturn(true);
item.checkBoxAction(dummyV);
// ...
をしかし、ときに私が実行テストは私がエラーを取得する:
java.lang.RuntimeException: Method isChecked in
android.widget.CompoundButton not mocked...
私は問題があると思う方法checkBoxAction
、isChecked
メソッドはv
では実行されず、他のオブジェクトで実行されます。この仮定は正しいですか?これは問題ですか?それをどうやって修正することができますか?それとも別のことがありますか?
てみ 'CheckBoxのdummyV =モック(CheckBox.class);' –
はい、これは働いていました!ありがとう! – Jeni
okと答えました。それが動作する場合は、それを受け入れたものとしてマークしてください –