मेरा प्रश्न है:Mockito @InjectMocks कैसे काम करता है?
मेरे पास कई वेब सेवा कक्षाएं हैं जो यह जांचने के लिए करती हैं कि सभी सामान्य सेवाओं से उनके तरीकों का उत्तराधिकारी हैं। प्रत्येक के लिए यूनिट टेस्ट लिखने के बजाय, मुझे लगता है कि मैं कार्यात्मक क्षेत्रों (यानी परीक्षण विधियों के तीन समूह, प्रत्येक एक अलग अंतर्निहित डीएओ विधि कॉल पर निर्भर करता है) द्वारा परीक्षण सूट को तोड़ सकता है।
मैं ऐसा करने का प्रस्ताव क्या है:
@Mock StateDAO mockedStateDao;
@Mock CountyDAO mockedCountyDao;
@Mock VisitorDAO mockedVisitorDao;
तो फोन:
@InjectMocks CountyServiceImpl<County> countyService = new CountyServiceImpl<County>();
@InjectMocks StateServiceImpl<State> stateService = new StateServiceImpl<State>();
@InjectMocks VisitorServiceImpl<Visitor> visitorService = new VisitorServiceImpl<Visitor>();
मैं कैसे सुनिश्चित करें कि प्रत्येक mockedDAO सही सेवा में इंजेक्शन दिया जाएगा हो सकता है? क्या सभी तीनों को स्वचालित करना आसान होगा (@InjectMocks का उपयोग करने के बजाय)?
मैं स्प्रिंग, हाइबरनेट, और Mockito उपयोग कर रहा हूँ ...
एक परीक्षण वर्ग के भीतर यह कर किया जाएगा। – DYezek
इसके अलावा, मेरे पास @InjectMocks के लिए पहले से ही स्प्रिंग टेस्ट-एप्लिकेशन-context.xml फ़ाइल में आइटम हैं (इसलिए मैं उन्हें ऑटोवायर कर सकता हूं)। ऑटोवॉयरिंग और इंजेक्शनिंग मैक्स के बीच के अंतर पर निश्चित नहीं है। – DYezek
अपने प्रश्न पर टिप्पणी छोड़ने के बजाय अतिरिक्त सामग्री जोड़ने के लिए अपना मूल प्रश्न संपादित करें। – ArtB