इंटरफ़ेस परीक्षण क्या है? प्रकार और उदाहरण

⚡ स्मार्ट सारांश

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

  • 🔗 परिभाषा: एक इंटरफ़ेस कोई भी कनेक्शन होता है - चाहे वह एपीआई हो, वेब सेवा हो या संदेश कतार - जो दो घटकों को जोड़ता है।
  • 🧭 दो खंड: यह परीक्षण वेब सर्वर और एप्लिकेशन सर्वर के बीच के लिंक तथा एप्लिकेशन सर्वर और डेटाबेस सर्वर के बीच के लिंक को लक्षित करता है।
  • 📄 उदाहरण सहित: XML इनपुट और JSON आउटपुट को उनके प्रकाशित प्रारूप विनिर्देशों के अनुसार मान्य किया जाता है।
  • 🧪 टेस्ट प्रकार: कार्यप्रवाह, विशिष्ट परिस्थितियाँ, प्रदर्शन और भार, साथ ही प्रत्येक व्यक्तिगत प्रणाली का अलग-अलग परीक्षण किया गया।
  • टूलींग: जब क्लिक करने के लिए कोई यूजर इंटरफेस मौजूद नहीं होता है, तो एपीआई क्लाइंट और सर्विस वर्चुअलाइजेशन अनुरोधों को संचालित करते हैं।
  • 🔍 कार्यक्षेत्र सीमा: इंटरफ़ेस परीक्षण, एकीकरण परीक्षण का एक उपप्रकार है जो कनेक्शन पर केंद्रित होता है।tracस्वयं।

वेब सर्वर, एप्लिकेशन सर्वर और डेटाबेस सर्वर के बीच इंटरफ़ेस परीक्षण

इंटरफ़ेस परीक्षण क्या है?

इंटरफ़ेस परीक्षण इसे एक प्रकार के सॉफ्टवेयर परीक्षण के रूप में परिभाषित किया जाता है जो यह सत्यापित करता है कि दो अलग-अलग सॉफ्टवेयर सिस्टम के बीच संचार सही ढंग से हो रहा है या नहीं।

दो घटकों को जोड़ने वाले कनेक्शन को इंटरफ़ेस कहा जाता है। कंप्यूटर की दुनिया में यह इंटरफ़ेस कुछ भी हो सकता है, जैसे API, वेब सेवाएं आदि। इन कनेक्टिंग सेवाओं या इंटरफ़ेस के परीक्षण को इंटरफ़ेस परीक्षण कहा जाता है।

इंटरफ़ेस वास्तव में एक सॉफ्टवेयर है जिसमें कमांड, संदेश और अन्य विशेषताओं का समूह होता है जो डिवाइस और उपयोगकर्ता के बीच संचार को सक्षम बनाता है।

महत्वपूर्ण बात यह है कि एक इंटरफ़ेस में एक कमी होती है।tract: एक सहमत अनुरोध प्रारूप, एक सहमत प्रतिक्रिया प्रारूप, त्रुटि कोड का एक सहमत सेट और एक सहमत समय सीमा। इंटरफ़ेस परीक्षण अभ्यास जोtracदोनों पक्षों से बदलाव की अनुमति होती है, इसलिए एक टीम द्वारा किया गया बदलाव दूसरी टीम को चुपचाप प्रभावित नहीं करता। चूंकि इस ट्रैफिक का अधिकांश हिस्सा कभी स्क्रीन तक नहीं पहुंचता, इसलिए इसमें पाई जाने वाली खामियां अदृश्य रहती हैं। ब्लैक बॉक्स परीक्षण यह कार्य केवल यूजर इंटरफेस के माध्यम से ही किया जाता है।

इंटरफ़ेस परीक्षण कैसे करें

इंटरफ़ेस परीक्षण में दो मुख्य खंडों का परीक्षण शामिल है:

  1. वेब सर्वर और अनुप्रयोग सर्वर इंटरफ़ेस
  2. अनुप्रयोग सर्वर और डेटाबेस सर्वर इंटरफ़ेस.

उपर्युक्त परिदृश्यों के लिए, इंटरफ़ेस परीक्षण किया जाता है

  • जांचें कि सर्वर ठीक से क्रियान्वित हो रहे हैं या नहीं
  • त्रुटियों को ठीक से संभाला जाता है या किसी एप्लिकेशन द्वारा की गई किसी भी क्वेरी के लिए त्रुटि संदेश लौटाया जाता है
  • जब किसी वेब सर्वर से कनेक्शन को बीच में रीसेट किया जाता है तो परिणाम की जाँच करें

नीचे दिया गया आरेख उन दोनों खंडों को एक ही श्रृंखला के रूप में दर्शाता है, जिसमें ब्राउज़र वेब सर्वर से, वेब सर्वर एप्लिकेशन सर्वर से और एप्लिकेशन सर्वर डेटाबेस सर्वर से बात करता है।

वेब सर्वर, एप्लिकेशन सर्वर और डेटाबेस सर्वर श्रृंखला में इंटरफ़ेस परीक्षण

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

इंटरफ़ेस परीक्षण का उदाहरण

मान लीजिए कि किसी भी xyz एप्लिकेशन के लिए, इंटरफ़ेस लेता है एक्सएमएल फ़ाइल को इनपुट के रूप में लेता है और डिलीवर करता है JSON आउटपुट के रूप में एक फ़ाइल। इस एप्लिकेशन के इंटरफ़ेस का परीक्षण करने के लिए, केवल XML फ़ाइल प्रारूप और JSON फ़ाइल प्रारूप के विनिर्देशों की आवश्यकता होती है।

इन विशिष्टताओं की सहायता से, हम नमूना इनपुट XML फ़ाइलें बना सकते हैं और उन्हें इंटरफ़ेस में डाल सकते हैं। फिर इनपुट (XML) और आउटपुट (JSON) फ़ाइलों को आवश्यकता के अनुसार मान्य करना ही इंटरफ़ेस परीक्षण कहलाता है।

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

इंटरफ़ेस परीक्षण क्यों करें

इंटरफ़ेस परीक्षण पूरा हो गया है

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

इसमें लागत का भी एक पहलू है। अनुरोध प्रारूप में किसी त्रुटि को ठीक करना तब तक सस्ता होता है जब तक कि दोनों सिस्टम आपस में जुड़ नहीं जाते, और एक बार जब डाउनस्ट्रीम सिस्टम पहले से ही गलत डेटा को संग्रहीत कर लेता है तो यह महंगा पड़ जाता है।

इंटरफ़ेस परीक्षण के प्रकार

इंटरफ़ेस परीक्षण के दौरान इंटरफ़ेस पर विभिन्न प्रकार के परीक्षण किए जाते हैं जिनमें शामिल हो सकते हैं

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

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

इंटरफ़ेस परीक्षण रणनीति

इंटरफ़ेस परीक्षण रणनीति एक ऐसी विधि है जिसका उपयोग कार्यान्वयन की परवाह किए बिना सामान्य परीक्षणों के साथ इंटरफेस का परीक्षण करने के लिए किया जाता है। हम इसका उपयोग कर सकते हैं।tracइंटरफ़ेस परीक्षण रणनीति के प्रत्येक कार्यान्वयन के लिए परीक्षण मामलों को तैयार करें और परीक्षण मामले के ठोस उदाहरण बनाएं। आधार/निरपेक्षtract टेस्ट केस कार्यान्वयन-तटस्थ परीक्षण करते हैं जबकि कंक्रीट टेस्ट परीक्षण के लिए ऑब्जेक्ट को इंस्टैंशिएट करने और कार्यान्वयन-विशिष्ट परीक्षण करने का ध्यान रखते हैं।

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

इंटरफ़ेस परीक्षण उपकरण

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

  • एपीआई क्लाइंट और अनुरोध निर्माता: ऐसे उपकरण जैसे Postman, SoapUIइंसोम्निया और हॉपस्कॉच REST, SOAP या GraphQL कॉल भेजते हैं, उन्हें पुन: प्रयोज्य संग्रह के रूप में संग्रहीत करते हैं, और स्थिति कोड, हेडर और प्रतिक्रिया निकायों पर दावा करते हैं।
  • Code-स्तरीय परीक्षण पुस्तकालय: मौजूदा टेस्ट सूट के भीतर चलने वाली लाइब्रेरी इंटरफेस जांचों को यूनिट परीक्षणों के साथ-साथ चलने देती हैं और प्रत्येक बिल्ड पर निष्पादित करती हैं, जिससे वे अप्रचलित होने से बचती हैं।
  • लोड और प्रोटोकॉल उपकरण: एक उपकरण जैसे कि JMeter यह उसी इंटरफ़ेस को बड़ी मात्रा में संचालित करता है, जो एक कार्यात्मक जांच को बदल देता है। प्रदर्शन का परीक्षण संबंध का।
  • सेवा वर्चुअलाइजेशन और मॉकअप: दूर के छोर के लिए एक स्टब का उपयोग करने से एक तरफ का परीक्षण तब किया जा सकता है जब दूसरी तरफ अनुपलब्ध हो, अधूरी हो, या बार-बार कॉल करने के लिए बहुत महंगी हो।

चयन से अधिक कवरेज महत्वपूर्ण है। चाहे कोई भी क्लाइंट चुना जाए, अनुरोधों के संग्रह को कोड के साथ ही वर्ज़न कंट्रोल में संग्रहित किया जाना चाहिए, ताकि इंटरफ़ेस में परिवर्तन और उसके परीक्षणों में परिवर्तन एक ही कमिट में शामिल हो सकें। व्यापक श्रेणी के विवरण में शामिल हैं। एपीआई परीक्षण.

इंटरफ़ेस परीक्षण चेकलिस्ट और सर्वोत्तम अभ्यास

एक छोटी चेकलिस्ट सभी रिलीज़ में इंटरफ़ेस कवरेज को सटीक बनाए रखती है। पूरे एप्लिकेशन के बजाय प्रत्येक कनेक्शन के लिए इस चेकलिस्ट का उपयोग करें।

  • साथtracसबसे पहले: पुष्टि करें कि अनुरोध और प्रतिक्रिया स्कीमा प्रकाशित विनिर्देश से फ़ील्ड-दर-फ़ील्ड मेल खाते हैं, जिसमें डेटा प्रकार और वैकल्पिक फ़ील्ड शामिल हैं।
  • सीमा मान: खाली पेलोड, अधिकतम लंबाई वाले फ़ील्ड, अप्रत्याशित वर्ण सेट और उल्टे दिनांक प्रारूप न भेजें।
  • त्रुटि पथ: सुनिश्चित करें कि प्रत्येक विफलता एक सार्थक कोड और संदेश लौटाती है, न कि स्टैक। tracया फिर एक खामोश सफलता।
  • समय समाप्त होना और पुनः प्रयास: अनुरोध के दौरान कनेक्शन को बाधित करें और पुष्टि करें कि कॉलर लेन-देन को दोहराए बिना सुरक्षित रूप से पुनः प्रयास करता है।
  • सुरक्षा: लिंक पर प्रमाणीकरण, प्राधिकरण और एन्क्रिप्शन की जांच करें, और पुष्टि करें कि त्रुटि संदेशों से आंतरिक विवरण लीक न हो।
  • डेटा संगतता: रिकॉर्ड को दूसरी तरफ से वापस पढ़ें और पुष्टि करें कि पारगमन के दौरान कुछ भी छोटा, पुनः एन्कोड या पुनर्व्यवस्थित नहीं हुआ था।
  • मात्रा: समवर्ती लोड के तहत सबसे अधिक ट्रैफिक वाले कॉल को दोहराएं और कनेक्शन-पूल की समाप्ति पर नज़र रखें।

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

ये जाँचें वर्णित व्यापक योजना के भीतर स्वाभाविक रूप से समाहित होती हैं। सॉफ्टवेयर परीक्षण के प्रकारऔर वे उसी तरह के कनेक्शनों के अंत तक प्रयोग किए जाने से पहले चलते हैं। प्रणाली परीक्षण.

इंटरफ़ेस परीक्षण बनाम एकीकरण परीक्षण

ये दोनों शब्द परस्पर विरोधी नहीं बल्कि संबंधित हैं: इंटरफ़ेस परीक्षण एकीकरण कार्य का वह भाग है जो स्वयं कनेक्शन पर केंद्रित होता है। नीचे दी गई तालिका प्रत्येक पक्ष के महत्व को दर्शाती है।

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

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

अक्सर पूछे जाने वाले प्रश्न

आमतौर पर, एकीकरण कवरेज की ज़िम्मेदारी QA इंजीनियरों की होती है, जो दोनों सिस्टम के डेवलपर्स के साथ काम करते हैं। सेवा-प्रधान उत्पादों में, एक समर्पित API परीक्षक यह ज़िम्मेदारी लेता है, क्योंकि इस काम में स्क्रीन नेविगेशन कौशल के बजाय अनुरोध निर्माण कौशल की आवश्यकता होती है।

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

इनमें काफी समानता है। एपीआई एक प्रकार का इंटरफ़ेस है, इसलिए एपीआई परीक्षण क्या इंटरफ़ेस परीक्षण उस विशिष्ट तकनीक पर लागू होता है? इंटरफ़ेस परीक्षण में फ़ाइल ड्रॉप, संदेश कतारें और डेटाबेस लिंक भी शामिल हैं जिनमें कोई एपीआई नहीं होता है।

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

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

कम से कम एक सकारात्मक और एक नकारात्मक परीक्षण वाले प्रलेखित एंडपॉइंट्स का हिस्सा, वास्तव में ट्रिगर किए गए घोषित त्रुटि कोड का हिस्सा, और इंटरफ़ेस दोषों की संख्याping बाद के चरणों के लिए। कच्चे परीक्षण के आंकड़े बहुत कम साबित करते हैं।

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

हाँ। किसी स्कीमा या नमूना पेलोड दिए जाने पर, यह अनुरोध निर्माता, अभिकथन और स्टब प्रतिक्रियाएँ शीघ्रता से तैयार कर देता है। विनिर्देश अभी भी किसी व्यक्ति द्वारा ही प्रदान किया जाना आवश्यक है, क्योंकि उत्पन्न अभिकथन तभी सही होता है जब उसका मूल अभिकथन सटीक हो।tracइसके पीछे।

इस पोस्ट को संक्षेप में इस प्रकार लिखें: