0
@RunWith(MockitoJUnitRunner.class)
public class RegisterMemberPresenterTest {
@Mock
private RegisterModel mRegisterModel;
@Mock
private VerifyModel mVerifyModel;
@Mock
private RegisterMemberContract.View mView;
@Mock
private RegisterMemberPresenter mRegisterMemberPresenter;
@Before
public void setUp() throws Exception {
MockitoAnnotations.initMocks(this);
}
@Test
public void check_validPassword(){
mRegisterMemberPresenter = new RegisterMemberPresenter(mRegisterModel,mVerifyModel,mView);
mMemberPresenter.validPassword2("","123");
verify(mView).setPasswordValidation(false, "error");
mMemberPresenter.validPassword2("123","");
verify(mView).setPassword2Validation(false, "error");
mMemberPresenter.validPassword2("123","123");
verify(mView).setPassword2Validation(true, null);
mMemberPresenter.validPassword2("123","456");
verify(mView).setPassword2Validation(false, "error");
}
}
このテストで問題があります。MockitoでのAndroidユニットテスト
4回目のテストでは「パスワードは同じではありません」が、テストを実行するとまだパススルーされます。
私は4番目のテストを最初に移動すると、ビューに問題があることを知っています 「エラーはありません」というエラーメッセージが表示されます。
public void validPassword2(String pwd, String pwd2) {
if (pwd.isEmpty()) {
mView.setPasswordValidation(false, "error");
return;
}
if (pwd2.isEmpty()) {
mView.setPassword2Validation(false, "error");
return;
}
if (pwd.equals(pwd2)) {
mView.setPassword2Validation(true, null);
} else {
mView.setPassword2Validation(false, "password is not same");
}
}
よう
何か)(validPAssword2ためのコードを示し; –
OK、それを追加します –
これはすべて1回のテストですか?それらを4つの個別のテストに分割してみてください –