代码之家  ›  专栏  ›  技术社区  ›  theanilpaudel

测试是否使用JUnit或Mockito从类中调用另一个方法

  •  0
  • theanilpaudel  · 技术社区  · 7 年前

    我有一个这样的班

    public class LoginPresImpl implements LoginAPIInterface.LoginDataListener, LoginAPIInterface.LoginPresenter{
        LoginAPIInterface.LoginView loginView;
        LoginAPIInterface.LoginDataInteractor loginDataInteractor;
    
        public  LoginPresImpl(LoginAPIInterface.LoginView loginView) {
            this.loginView = loginView;
            loginDataInteractor=new LoginDataModel(this);
        }
    
        @Override
        public void getLoginUpdateData(String username, String password,String registrationToken) {
            loginDataInteractor.getLoginData(username,password,registrationToken);
        }
    
    }
    

    我想测试一下

    GetLoginUpdatedata()。

    将调用LoginDataInterctor的getLogindate()方法。 我创建了这样的测试类

    public class LoginPresImplTest {
        LoginAPIInterface.LoginDataInteractor loginDataInteractorMock;
        LoginAPIInterface.LoginView loginViewMock;
        LoginPresImpl loginPres;
        @Before
        public void setUp(){
            loginDataInteractorMock = Mockito.mock(LoginAPIInterface.LoginDataInteractor.class);
            loginViewMock = Mockito.mock(LoginAPIInterface.LoginView.class);
            loginPres = Mockito.spy(LoginPresImpl.class);
    
    
        }
        @Test
        public void getLoginUpdateData() {
            loginPres.getLoginUpdateData("01","","");
            verify(loginPres).getLoginUpdateData("01","","");
    
        }
    

    但我不知道怎么查电话

    GetLoginUpdatedata()。

    最终会打电话

    logindataInterctor.getlogindata()。

    方法。我怎么能用JUnit或Mockito测试这个呢?

    1 回复  |  直到 7 年前
        1
  •  0
  •   Timothy Truckle Vincent Boutot    7 年前

     getLoginUpdateData()
    

    loginDataInteractor