下面是一个服务的模拟:
@TestConfiguration
public static class TestConfig {
@Bean
@Primary
public UserService userServiceBean() {
UserService mock = mock(UserService.class);
doReturn(12l).when(mock).getCompanyId();
return mock;
}
}
这会影响其他UT,在这些UT中,我希望返回一些其他companyId,例如:
when(userService.getCompanyId()).thenReturn(155l); <-- this mock is not working
谢谢
1条答案
按热度按时间64jmpszr1#
有些情况下你不能使用
when/thenReturn
。Stubbing void方法就是其中之一。其他情况包括使用Mockito spies,以及多次stubbing同一个方法。参考:Mockito - difference between doReturn() and when()