स्वीकृति परीक्षण और कार्यात्मक परीक्षण के बीच अंतर?


147

स्वीकृति परीक्षणों और कार्यात्मक परीक्षणों के बीच वास्तविक अंतर क्या है?

प्रत्येक के मुख्य आकर्षण या उद्देश्य क्या हैं? हर जगह मैंने पढ़ा कि वे अस्पष्ट रूप से समान हैं।

जवाबों:


172

मेरी दुनिया में, हम शब्दों का उपयोग इस प्रकार करते हैं:

कार्यात्मक परीक्षण : यह एक सत्यापन गतिविधि है; क्या हमने सही ढंग से काम करने वाला उत्पाद बनाया? क्या सॉफ्टवेयर व्यावसायिक आवश्यकताओं को पूरा करता है?

इस प्रकार के परीक्षण के लिए हमारे पास परीक्षण के मामले हैं जो उन सभी संभावित परिदृश्यों को कवर करते हैं जिनके बारे में हम सोच सकते हैं, भले ही उस परिदृश्य के "वास्तविक दुनिया में" होने की संभावना न हो। इस प्रकार का परीक्षण करते समय, हम अधिकतम कोड कवरेज का लक्ष्य रखते हैं। हम किसी भी परीक्षण वातावरण का उपयोग करते हैं जिसे हम समय पर पकड़ सकते हैं, इसे "उत्पादन" कैलिबर होने की आवश्यकता नहीं है, इसलिए जब तक यह प्रयोग करने योग्य नहीं है।

स्वीकृति परीक्षण : यह एक सत्यापन गतिविधि है; क्या हमने सही चीज़ का निर्माण किया? क्या यह वास्तव में ग्राहक की जरूरत है?

यह आमतौर पर ग्राहक के साथ, या आंतरिक ग्राहक प्रॉक्सी (उत्पाद स्वामी) के सहयोग से किया जाता है। इस प्रकार के परीक्षण के लिए हम उन परीक्षण मामलों का उपयोग करते हैं जो उन विशिष्ट परिदृश्यों को कवर करते हैं जिनके तहत हम सॉफ़्टवेयर का उपयोग करने की अपेक्षा करते हैं। यह परीक्षण एक "उत्पादन-जैसा" वातावरण में आयोजित किया जाना चाहिए, हार्डवेयर पर जो एक ग्राहक के रूप में समान है, या उसके करीब है। यह तब होता है जब हम अपनी "उपयोगिताएँ" का परीक्षण करते हैं:

  • विश्वसनीयता, उपलब्धता : एक तनाव परीक्षण के माध्यम से मान्य।

  • स्केलेबिलिटी : लोड परीक्षण के माध्यम से मान्य।

  • उपयोगिता : ग्राहक के लिए एक निरीक्षण और प्रदर्शन के माध्यम से मान्य। क्या UI उनकी पसंद के अनुसार कॉन्फ़िगर किया गया है? क्या हमने सभी सही स्थानों पर ग्राहक की ब्रांडिंग की है? क्या हमारे पास वे सभी क्षेत्र / स्क्रीन हैं जिनके लिए उन्होंने पूछा था?

  • सुरक्षा (उर्फ, प्रतिभूति, बस फिट करने के लिए) : प्रदर्शन के माध्यम से मान्य। कभी-कभी एक ग्राहक सुरक्षा ऑडिट और / या घुसपैठ परीक्षण करने के लिए एक बाहरी फर्म को काम पर रखेगा।

  • रखरखाव : हम सॉफ्टवेयर अपडेट / पैच कैसे वितरित करेंगे के प्रदर्शन के माध्यम से मान्य।

  • विन्यास क्षमता: ग्राहक अपनी आवश्यकताओं के अनुरूप प्रणाली को कैसे संशोधित कर सकते हैं, इसके प्रदर्शन के माध्यम से मान्य।

यह किसी भी तरह से मानक नहीं है, और मुझे नहीं लगता कि एक "मानक" परिभाषा है, जैसा कि परस्पर विरोधी जवाब यहां प्रदर्शित करते हैं। आपके संगठन के लिए सबसे महत्वपूर्ण बात यह है कि आप इन शर्तों को सटीक रूप से परिभाषित करते हैं, और उनसे चिपके रहते हैं।


अच्छा जवाब के लिए प्लस 1 और "उर्फ, सिक्योरिटी, सिर्फ" :) में फिट होने के लिए। मजेदार बात :) एसओ टीम ने इस तथ्य पर ध्यान नहीं दिया कि वास्तविक दुनिया में कोई व्यक्ति असली शब्द के साथ + संकेत को बदल सकता है जैसे मैंने किया था। इसलिए वे टिप्पणी में पहले शब्द के रूप में +1 टाइप करने की अनुमति नहीं देते हैं, लेकिन वे "प्लस 1" :) की अनुमति देते हैं। तो कार्यात्मक रूप से, वे इसे ठीक से जांचने में असफल रहे :)। Myabe उन्होंने सिर्फ स्वीकृति परीक्षण की कोशिश की :)
जियो सी।

71

मुझे पैट्रिक कफ का जवाब पसंद है। मुझे जो कुछ भी पसंद है वह एक परीक्षण स्तर और एक परीक्षण प्रकार के बीच का अंतर है जो मेरे लिए एक आंख खोलने वाला था।

परीक्षण स्तर

वी-मॉडल का उपयोग करके समझाने के लिए परीक्षण स्तर आसान है , एक उदाहरण: यहाँ छवि विवरण दर्ज करें प्रत्येक परीक्षण स्तर का अपना विकास स्तर होता है । इसकी एक विशिष्ट समय विशेषता है, वे विकास के जीवन चक्र में निश्चित चरण में निष्पादित होते हैं।

  1. घटक / इकाई परीक्षण => विस्तृत डिजाइन का सत्यापन
  2. घटक / इकाई एकीकरण परीक्षण => वैश्विक डिजाइन का सत्यापन
  3. सिस्टम परीक्षण => सिस्टम आवश्यकताओं की पुष्टि
  4. सिस्टम एकीकरण परीक्षण => सिस्टम आवश्यकताओं की पुष्टि
  5. स्वीकृति परीक्षण => उपयोगकर्ता की आवश्यकताओं को मान्य करना

परीक्षण प्रकार

एक परीक्षण प्रकार एक विशेषता है, यह एक विशिष्ट परीक्षण उद्देश्य पर केंद्रित है। टेस्ट प्रकार आपके गुणवत्ता पहलुओं पर जोर देते हैं, जिन्हें तकनीकी या गैर-कार्यात्मक पहलुओं के रूप में भी जाना जाता है। परीक्षण प्रकारों को किसी भी परीक्षण स्तर पर निष्पादित किया जा सकता है । मैं आईएसओ / आईईसी 25010: 2011 में उल्लिखित गुणवत्ता प्रकारों को परीक्षण प्रकार के रूप में उपयोग करना पसंद करता हूं ।

  1. क्रियात्मक परीक्षण
  2. विश्वसनीयता परीक्षण
  3. प्रदर्शन का परीक्षण
  4. संचालन क्षमता परीक्षण
  5. सुरक्षा परीक्षण
  6. अनुकूलता परीक्षण
  7. स्थिरता परीक्षण
  8. हस्तांतरणीयता परीक्षण

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


2
यह इस सवाल का सबसे अच्छा जवाब है और "एक परीक्षण स्तर और एक परीक्षण प्रकार के बीच का अंतर" एक ऐसी चीज है जो सबसे अधिक उत्तर यहां याद आती है और आप सही हैं कि यह "आंख खोलने वाला" है
zmilan

23

अंतर समस्या और समाधान के परीक्षण के बीच है। सॉफ्टवेयर एक समस्या का समाधान है, दोनों का परीक्षण किया जा सकता है।

कार्यात्मक परीक्षण इस बात की पुष्टि करता है कि सॉफ्टवेयर ने समस्या को हल करने की सीमाओं के भीतर एक फ़ंक्शन किया है। यह विकासशील सॉफ्टवेयर का एक अभिन्न अंग है, कारखाने से निकलने से पहले बड़े पैमाने पर उत्पादित उत्पाद पर किए गए परीक्षण के तुलनीय है। एक कार्यात्मक परीक्षण यह पुष्टि करता है कि उत्पाद वास्तव में आपके (डेवलपर) के रूप में काम करता है, ऐसा लगता है।

स्वीकृति परीक्षण उत्पाद को वास्तव में सत्यापित करता है कि समस्या को हल करने के लिए इसे हल किया गया था। यह सबसे अच्छा उपयोगकर्ता (ग्राहक) द्वारा किया जा सकता है, उदाहरण के लिए, अपने कार्यों को करने के लिए जो सॉफ्टवेयर के साथ सहायता करता है। यदि सॉफ़्टवेयर इस वास्तविक विश्व परीक्षण को पास करता है, तो इसे पिछले समाधान को बदलना स्वीकार किया जाता है। यह स्वीकृति परीक्षण कभी-कभी केवल उत्पादन में ठीक से किया जा सकता है, खासकर यदि आपके पास गुमनाम ग्राहक हैं (उदाहरण के लिए वेबसाइट)। इस प्रकार एक नई सुविधा केवल दिनों या हफ्तों के उपयोग के बाद स्वीकार की जाएगी।

कार्यात्मक परीक्षण - उत्पाद का परीक्षण करना, यह सत्यापित करना कि इसमें आपके द्वारा डिज़ाइन किए गए या निर्माण (कार्य, गति, त्रुटियां, स्थिरता, आदि) गुण हैं।

स्वीकृति परीक्षण - इसके संदर्भ में उत्पाद का परीक्षण करें, इसके लिए मानव अंतःक्रिया के अनुकरण की आवश्यकता होती है, यह परीक्षण करें कि मूल समस्या पर इसका वांछित प्रभाव है।


9

जवाब राय है। मैंने बहुत सी परियोजनाओं में काम किया और टेस्टमैन और जारीकर्ता और सभी विभिन्न भूमिकाओं और विभिन्न पुस्तकों में विवरण अलग-अलग हैं इसलिए यहाँ मेरी भिन्नता है:

फंक्शनल-टेस्टिंग: व्यावसायिक आवश्यकताओं को पूरा करें और सभी को एक कार्यात्मक दृष्टिकोण से अच्छा और थोरोली टेस्ट करें।

स्वीकृति-परीक्षण: "भुगतान करने वाला" ग्राहक वह परीक्षण करता है जिसे वह करना पसंद करता है ताकि वह वितरित उत्पाद को स्वीकार कर सके। यह ग्राहक पर निर्भर करता है, लेकिन आमतौर पर परीक्षण कार्यात्मक-परीक्षण के रूप में पूरी तरह से नहीं होते हैं, खासकर अगर यह एक इन-हाउस परियोजना है क्योंकि हितधारक पहले परीक्षण चरणों में किए गए परीक्षण परिणामों की समीक्षा और भरोसा करते हैं।

जैसा कि मैंने कहा कि यह मेरा दृष्टिकोण और अनुभव है। कार्यात्मक-परीक्षण व्यवस्थित है और स्वीकृति-परीक्षण बल्कि व्यवसाय विभाग चीज़ का परीक्षण कर रहा है।


मुझे यह जवाब पसंद है :) वे बहुत ज्यादा एक ही चीज हैं।
अंबनम

1
यूएटी हां आखिरकार "भुगतान" ग्राहक द्वारा किया जाता है। हालांकि, यह सबसे पहले एक क्यूए व्यक्ति द्वारा किया जाता है जो परीक्षण के साथ "अच्छा" है और सिस्टम को तोड़ने के लिए "कोशिश" कर रहा है और सभी "छोटी" चीजों की तलाश कर रहा है, क्योंकि "भुगतान" करने वाले ग्राहक को इस पर अपना हाथ मिलता है। थकाऊ चीजों को दोहराने के लिए सेलेनियम स्वचालन का उपयोग क्यूए परीक्षक द्वारा सही यूएटी परीक्षण के साथ भी किया जा सकता है, लेकिन सभी अपेक्षित ब्राउज़रों के साथ अपेक्षित सभी कार्यक्षमता का परीक्षण करने के लिए कभी भी सही परीक्षण नहीं करना चाहिए। यूएटी बहुत आत्म व्याख्यात्मक है। मुझे लगता है कि अधिकांश कार्यात्मक परीक्षण विवरण रोबोट और शब्दकोश के लिए प्रतीत होते हैं।
टॉम स्टिकेल

जैसा कि मैंने कहा कि यह मेरा अनुभव है कि शर्तों की व्याख्या कैसे की जाती है।
होली

यह ठीक है। जब मैंने इस अस्पष्ट परिभाषा पर ध्यान दिया ... मुझे बस "कार्यात्मक-परीक्षण: टिप्पणी करनी थी: व्यावसायिक आवश्यकताओं को लेना चाहिए और सभी को एक कार्यात्मक दृष्टिकोण से अच्छा और थोरोली परीक्षण करना चाहिए।"
टॉम स्टिकेल

हाहा, हाँ, अब मैं तुम्हें समझता हूँ। ठीक है, यह एक ऐसी चीज है जिसके बारे में आप पूरी किताब लिख सकते हैं। जिस क्षण मैंने इसे लिखा, मैं उसमें बहुत अधिक नहीं जाना चाहता था।
होली

8
  1. श्रोतागण। कार्यात्मक परीक्षण सॉफ्टवेयर बनाने वाली टीम के सदस्यों को आश्वस्त करना है कि यह वही करता है जो वे उम्मीद करते हैं। स्वीकृति परीक्षण उपभोक्ता को आश्वस्त करना है कि यह उनकी आवश्यकताओं को पूरा करता है।

  2. स्कोप। कार्यात्मक परीक्षण केवल एक समय में एक घटक की कार्यक्षमता का परीक्षण करता है। स्वीकृति परीक्षण उत्पाद के किसी भी पहलू को कवर करता है जो उपभोक्ता को सॉफ़्टवेयर स्वीकार करने से पहले परीक्षण करने के लिए पर्याप्त मायने रखता है (यानी, इसकी स्वीकार्यता को निर्धारित करने के लिए परीक्षण करने के लिए समय या धन के लायक कुछ भी होगा)।

सॉफ्टवेयर कार्यात्मक परीक्षण, एकीकरण परीक्षण, और सिस्टम परीक्षण पास कर सकता है; केवल स्वीकृति परीक्षणों को विफल करने के लिए जब ग्राहक को पता चलता है कि सुविधाएँ अभी उनकी जरूरतों को पूरा नहीं करती हैं। यह आमतौर पर मतलब होगा कि किसी ने कल्पना पर खराब कर दिया। सॉफ़्टवेयर कुछ कार्यात्मक परीक्षणों को भी विफल कर सकता है, लेकिन स्वीकृति परीक्षण पास कर सकता है क्योंकि ग्राहक कुछ कार्यात्मक बगों से निपटने के लिए तैयार है, जब तक कि सॉफ्टवेयर को मुख्य चीजें जो उन्हें अच्छी तरह से चाहिए होती हैं (बीटा सॉफ़्टवेयर को अक्सर उपयोगकर्ताओं के सबसेट द्वारा स्वीकार किया जाएगा इससे पहले पूरी तरह कार्यात्मक है)।


2

कार्यात्मक परीक्षण: अंतिम कार्यक्रम संरचना के संबंध में निर्दिष्ट कार्यात्मक आवश्यकताओं से प्राप्त परीक्षण डेटा का अनुप्रयोग। ब्लैक-बॉक्स परीक्षण के रूप में भी जाना जाता है।

स्वीकृति परीक्षण: यह सुनिश्चित करने के लिए आयोजित औपचारिक परीक्षण कि कोई प्रणाली इसके स्वीकार्यता मानदंडों को पूरा करती है या नहीं - एक अंतिम उपयोगकर्ता को यह निर्धारित करने में सक्षम करती है कि वह प्रणाली स्वीकार करे या नहीं।


1

मेरे विचार में मुख्य अंतर यह है कि कौन कहता है कि परीक्षण सफल होते हैं या असफल।

एक कार्यात्मक परीक्षण परीक्षण करता है कि सिस्टम पूर्वनिर्धारित आवश्यकताओं को पूरा करता है। यह प्रणाली को विकसित करने के लिए जिम्मेदार लोगों द्वारा किया जाता है और जांचा जाता है।

उपयोगकर्ताओं द्वारा एक स्वीकृति परीक्षण पर हस्ताक्षर किए जाते हैं। आदर्श रूप से उपयोगकर्ता कहेंगे कि वे क्या परीक्षण करना चाहते हैं, लेकिन व्यवहार में यह एक कार्यात्मक परीक्षा का सूर्यास्त होने की संभावना है क्योंकि उपयोगकर्ता पर्याप्त समय का निवेश नहीं करते हैं। ध्यान दें कि यह दृश्य उन व्यावसायिक उपयोगकर्ताओं से है जिन्हें मैं उपयोगकर्ताओं के अन्य सेटों के साथ सौदा करता हूं, जैसे विमानन और अन्य सुरक्षा महत्वपूर्ण इस अंतर को अच्छी तरह से नहीं कर सकते हैं,


स्वीकृति परीक्षण यह निर्धारित करेगा कि कोई सिस्टम किसी दिए गए उपयोग के मामले या सभी कल्पनीय उपयोग के मामलों की स्वीकृति मानदंडों को संतुष्ट करता है या नहीं। यह आमतौर पर विशेषज्ञ-उपयोगकर्ता द्वारा यह निर्धारित करने के लिए किया जाता है कि सिस्टम स्वीकार्य है या नहीं। एयरोनॉटिक्स में एक परीक्षण पायलट एक एविएटर है जो विशिष्ट युद्धाभ्यासों को उड़ाकर नए विमानों का परीक्षण करता है। शीर्ष पायलट, नाविक और इंजीनियर उड़ान परीक्षण करते हैं और परीक्षण मिशन के अंत में वे मूल्यांकन और प्रमाणन डेटा प्रदान करेंगे।
jjpcondor

1

स्वीकृति परीक्षण :

... ब्लैक-बॉक्स परीक्षण एक प्रणाली (जैसे सॉफ्टवेयर, निर्मित यांत्रिक भागों, या रासायनिक उत्पादों के बैचों) के बहुत से पहले किया जाता है।

हालांकि यह कहना जारी है:

इसे कार्यात्मक परीक्षण, ब्लैक-बॉक्स परीक्षण, रिलीज़ स्वीकृति, QA परीक्षण, अनुप्रयोग परीक्षण, विश्वास परीक्षण, अंतिम परीक्षण, सत्यापन परीक्षण या फ़ैक्टरी स्वीकृति परीक्षण के रूप में भी जाना जाता है

एक "उद्धरण आवश्यक" चिह्न के साथ।

कार्यात्मक परीक्षण (जो वास्तव में सिस्टम परीक्षण को पुनर्निर्देशित करता है):

अपनी निर्दिष्ट आवश्यकताओं के साथ सिस्टम के अनुपालन का मूल्यांकन करने के लिए एक पूर्ण, एकीकृत प्रणाली पर आयोजित किया जाता है। सिस्टम परीक्षण ब्लैक बॉक्स परीक्षण के दायरे में आता है, और इस तरह, कोड या तर्क के आंतरिक डिजाइन के ज्ञान की आवश्यकता नहीं होनी चाहिए।

तो इस परिभाषा से वे एक ही चीज़ के बहुत अधिक हैं।

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


0

दोनों के बीच संबंध: स्वीकृति परीक्षण में आमतौर पर कार्यात्मक परीक्षण शामिल होता है, लेकिन इसमें अतिरिक्त परीक्षण शामिल हो सकते हैं। उदाहरण के लिए लेबलिंग / प्रलेखन आवश्यकताओं की जाँच करना।

कार्यात्मक परीक्षण तब होता है जब परीक्षण के तहत उत्पाद को एक परीक्षण वातावरण में रखा जाता है, जो कि परीक्षण के तहत डिवाइस की प्रतिक्रिया की जांच करते समय लक्ष्य वातावरण आमतौर पर या उससे भी आगे, क्या उत्तेजना पैदा कर सकता है (परीक्षण के दायरे के भीतर)।

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

स्वीकृति परीक्षणों को सत्यापन के रूप में संदर्भित किया जाता है जब उत्पाद विनिर्देश के खिलाफ डिजाइन का परीक्षण किया जाता है, और स्वीकृति परीक्षणों को सत्यापन के रूप में संदर्भित किया जाता है, जब उत्पाद को उपभोक्ता के वास्तविक वातावरण में रखा जाता है।


0

स्वीकृति परीक्षण केवल ग्राहक द्वारा किया गया परीक्षण है, और इसमें अन्य प्रकार के परीक्षण शामिल हैं:

  • कार्यात्मक परीक्षण: "यह बटन काम नहीं करता है"
  • गैर-कार्यात्मक परीक्षण: "यह पृष्ठ काम करता है लेकिन बहुत धीमा है"

कार्यात्मक परीक्षण बनाम गैर-कार्यात्मक परीक्षण (उनके उपप्रकार) के लिए - इस एसओ प्रश्न के लिए मेरा उत्तर देखें ।


-1

वे एक जैसी ही चीज हैं।

स्वीकृत परीक्षण पूर्ण प्रणाली पर वास्तविक उत्पादन / नियोजन वातावरण के समान संभव होता है, जब सिस्टम तैनात या वितरित किया जाता है।

आप एक स्वचालित तरीके से या मैन्युअल रूप से स्वीकृति परीक्षण कर सकते हैं।


1
जबकि सेलेनियम और वातिन (या वातिर) आदि के साथ स्वचालन ... रक्षा की बहुत मूल्यवान पहली पंक्ति है, कुछ भी नहीं एक प्रशिक्षित क्यूए व्यक्ति को सेट करता है जो "सिस्टम को तोड़ने" पर सेट है। स्वचालन महान है, लेकिन AJAX और जावास्क्रिप्ट फ्रेमवर्क के आधुनिक विकास के साथ। और सब कुछ को स्वचालित करने के लिए एक पृष्ठ पर आउटपुट का बदलना दुःस्वप्न को अद्यतन करने वाली एक पटकथा है। वे समान नहीं हैं
टॉम स्टिकेल
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.