我正在使用eclipse在類上運行一些單元測試,我正在使用Mockito,因此我不必連接到數據庫。我在其他測試中使用了anyString(),但它在這個測試中不起作用。如果我將它從anyString()更改爲「」,則錯誤消失並且測試通過。mockito中的anyString()拋出參數匹配器的無效使用
我的測試是:
@Test
public void test_GetUserByUsername_CallsCreateEntityManager_WhenAddUserMethodIsCalled() {
//Arrange
EntityManagerFactory mockEntityManagerFactory = mock(EntityManagerFactory.class);
EntityManager mockEntityManager= mock(EntityManager.class);
UserRepositoryImplementation userRepositoryImplementation = new UserRepositoryImplementation();
userRepositoryImplementation.setEntityManagerFactory(mockEntityManagerFactory);
when(mockEntityManagerFactory.createEntityManager()).thenReturn(mockEntityManager);
//Act
userRepositoryImplementation.getUserByUsername(anyString());
//Assert
verify(mockEntityManagerFactory, times(1)).createEntityManager();
}
誰能解釋爲什麼我收到錯誤,我能做些什麼來解決它?