我正在尝试测试此方法,以查看是否没有参数调用searchProfile:

public void searchProfile(Long searchTerm) {
    this.searchTerm = searchTerm;
    searchProfile();
}

public void searchProfile() {
     //...
}


这是我的测试用例,我用一个参数调用该方法,并期望不带参数的方法被调用

@Test
public void testSearchProfile() throws Exception {
    CustomerProfileController sutStub = Mockito.mock(CustomerProfileController.class);

    doNothing().when(sutStub).searchProfile();

    sutStub.searchProfile(0L);

    verify(sutStub, times(1)).searchProfile();
}


我该如何进行这项工作?现在它给我一个错误:


  比较失败:
  
  预期:customerProfileController.searchProfile();
  
  实际:customerProfileController.searchProfile(0);

最佳答案

你应该用

Mockito.when(sutStub.searchProfile(Mockito.anyLong())).thenCallRealMethod();


准备模拟游戏时。

09-10 03:59