Ecco la mia domanda:Come funziona Mockito @InjectMocks?
Ho diverse classi di servizi Web per verificare che tutti ereditino i loro metodi da un servizio generico. Piuttosto che scrivere un test unitario per ciascuno, immagino di poter rompere la suite di test in base a aree funzionali (cioè tre gruppi di metodi di test, ciascuno basato su una chiamata al metodo DAO sottostante).
Quello che mi propongo di fare è:
@Mock StateDAO mockedStateDao;
@Mock CountyDAO mockedCountyDao;
@Mock VisitorDAO mockedVisitorDao;
quindi chiamare:
@InjectMocks CountyServiceImpl<County> countyService = new CountyServiceImpl<County>();
@InjectMocks StateServiceImpl<State> stateService = new StateServiceImpl<State>();
@InjectMocks VisitorServiceImpl<Visitor> visitorService = new VisitorServiceImpl<Visitor>();
Come posso essere sicuro che ogni mockedDAO verrà iniettato nel servizio corretto? Sarebbe più facile eseguire l'autowire su tutti e tre (invece di usare @InjectMocks)?
sto usando Spring, Hibernate, e Mockito ...
cercherò di fare questo all'interno di una classe di test. – DYezek
Inoltre, ho già gli elementi per @InjectMocks nel file Spring test-application-context.xml (quindi potrei autoprodarli). Non sono sicuro della differenza tra l'autowiring e l'iniezione di mock. – DYezek
Modifica la domanda originale per aggiungere contenuti aggiuntivi anziché lasciare commenti sulla tua domanda. – ArtB