【发布时间】:2018-09-13 10:23:06
【问题描述】:
我有一个在其中使用@Autowired 注释的抽象类。 我正在尝试使用 MockitoJUnitRunner 编写 junit。
@RunWith(MockitoJUnitRunner.class)
public class AbstractAdminSearchServiceTest {
@Mock
private IUPSService upsService;
Map<String,String> map;
@Before
public void setUp() {
map=new HashMap<>();
}
@Test
public void testSearchAdministratorsForIndividualNotification(){
AbstractAdminSearchService
mock=Mockito.mock(AbstractAdminSearchService.class,
Mockito.CALLS_REAL_METHODS);
when(upsService.getUsersProfile(buildUserIds(),new String[]
{})).thenReturn(map);
mock.searchAdministratorsForIndividualNotification(buildSolrUsers(),
"");
}
@Mock 不工作,'upsService' 没有被嘲笑。 结果,当实际调用 upsService.getUsersProfile 时,我得到了 NullpointerException。
【问题讨论】:
-
你在模拟一个类并期望它是自动连接的......那是行不通的。
标签: java spring junit mocking mockito