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




functional-testing acceptance-testing (8)

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

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


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

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

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


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

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

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


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

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


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

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

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


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

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

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

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


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

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

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

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

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

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

  • स्केलेबिलिटी : लोड टेस्ट के जरिए मान्यता दी गई

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

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

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

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

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


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

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

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


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

परीक्षण के स्तर

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

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

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

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

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

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





acceptance-testing