Maven Surefire और Maven Failsafe प्लगइन्स में क्या अंतर है?


जवाबों:


140

सरल शब्दों में, Failsafe प्लगइन को एकीकरण परीक्षणों को चलाने के लिए डिज़ाइन किया गया है जबकि यूनिट परीक्षण चलाने के लिए अचूक ।

यह आगे मावेन के बारे में बताया गया है :

  • maven-surefire-pluginयूनिट परीक्षण चलाने के लिए डिज़ाइन किया गया है और यदि कोई भी परीक्षण विफल हो जाता है तो यह निर्माण को तुरंत विफल कर देगा।

  • maven-failsafe-pluginएकीकरण परीक्षण चलाने के लिए डिज़ाइन किया गया है , और वास्तव में परीक्षण चलाने से परीक्षण विफलताओं होने पर निर्माण को विफल करने के लिए decouples।

    " फेलसेफ़ " नाम दोनों को चुना गया था क्योंकि यह अचूक का एक पर्याय है और क्योंकि इसका अर्थ है कि जब यह विफल होता है, तो यह एक सुरक्षित तरीके से ऐसा करता है।

    फेलसेफ प्लगइन दो गोल है:

    • failsafe:integration-test एक आवेदन के एकीकरण परीक्षण चलाता है,
    • failsafe:verify पुष्टि करता है कि एक आवेदन के एकीकरण परीक्षण पारित कर दिया।

यह सभी देखें:


4
दिलचस्प सवाल यह है कि क्यों । कई निर्माण उपकरण पूरी तरह से काम करते हैं बिना यकीनन कृत्रिम और सीमित अंतर के। दोनों प्लगइन्स को एक साथ कॉन्फ़िगर करना और उनकी रिपोर्ट को सुसंगत तरीके से अवशोषित करना काफी PITA है।
राफेल

और नहीं, अन्य उत्तरों में बताए गए अंतर फिल्टर और झंडे के लिए कई उपकरण होने के लिए पर्याप्त कारण प्रदान नहीं करते हैं।
राफेल

27

से https://maven.apache.org/surefire/maven-failsafe-plugin/ , मैं कहूँगा कि अचूक और फेलसेफ के बीच अंतर तरह वे असफल है:

यदि आप परीक्षण चलाने के लिए अचूक प्लगिन का उपयोग करते हैं, तो जब आपके पास एक परीक्षण विफलता होती है, तो निर्माण एकीकरण-परीक्षण चरण में बंद हो जाएगा और आपके एकीकरण परीक्षण वातावरण को सही ढंग से फाड़ा नहीं गया होगा।

फेलसेफ प्लगिन का उपयोग एकीकरण-परीक्षण के दौरान किया जाता है और किसी अनुप्रयोग के एकीकरण परीक्षणों को निष्पादित करने के लिए निर्माण जीवनचक्र के चरणों को सत्यापित करता है। फ़ेलसेफ़ प्लगिन एकीकरण-परीक्षण चरण के दौरान निर्माण को विफल नहीं करेगा, इस प्रकार पोस्ट-एकीकरण-परीक्षण चरण को निष्पादित करने में सक्षम बनाता है।


2
फिर सवाल यह हो जाता है: कभी भी अचूक का उपयोग क्यों करें यदि वे हमें बता रहे हैं कि यह गलत स्थिति में सामान छोड़ सकता है?
user118967

6

मेरे देश में इसका दूसरा गूगल रिजल्ट है जब इस एफएक्यू को पाने के लिए "मावेन फेलसेफ मावेन अचायरफायर" की खोज की जा रही है: मावेन-फेलसेफ-प्लगइन और मावेन-अस्फीयर-प्लगइन के बीच अंतर जो बताता है:

maven-Surefire-plugin रनिंग यूनिट टेस्ट के लिए डिज़ाइन किया गया है और यदि कोई भी परीक्षण विफल हो जाता है तो यह बिल्ड को तुरंत विफल कर देगा।

मावेन-फ़ेलसेफ़-प्लगइन को एकीकरण परीक्षण चलाने के लिए डिज़ाइन किया गया है, और वास्तव में परीक्षण चलाने से परीक्षण विफलताओं होने पर निर्माण को विफल करने के लिए decouples। "

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.