API परीक्षण ट्यूटोरियल: शुरुवातकर्ताहरूको लागि पूर्ण गाइड

यो गहिरो API परीक्षण ट्यूटोरियलले API परीक्षण, वेब सेवाहरू र तपाइँको संगठनमा API परीक्षण कसरी परिचय गर्ने बारे सबै व्याख्या गर्दछ:

एपीआई परीक्षणको साथमा गहिरो अन्तरदृष्टि प्राप्त गर्नुहोस्। यस परिचयात्मक ट्यूटोरियलबाट शिफ्ट-बायाँ परीक्षण र वेब सेवाहरूको अवधारणा।

वेब एपीआई, कसरी एपीआईले काम गर्छ (वास्तविक-विश्व उदाहरणका साथ) र यो वेब सेवाहरूबाट कसरी फरक छ भन्ने अवधारणाहरू यसका उदाहरणहरूद्वारा राम्ररी व्याख्या गरिएको छ। ट्यूटोरियल।

API परीक्षण ट्यूटोरियलहरूको सूची

ट्यूटोरियल #1: एपीआई परीक्षण ट्यूटोरियल: शुरुवातकर्ताहरूको लागि पूर्ण गाइड

ट्यूटोरियल #2: वेब सेवा ट्यूटोरियल: अवयव, वास्तुकला, प्रकार र उदाहरणहरू

ट्यूटोरियल #3: शीर्ष 35 ASP.Net र Web API अन्तर्वार्ता प्रश्नहरू उत्तरहरू सहित

ट्यूटोरियल #4: POSTMAN ट्यूटोरियल: API परीक्षण POSTMAN प्रयोग गर्दै

ट्यूटोरियल #5: Apache HTTP क्लाइन्ट प्रयोग गरेर वेब सेवा परीक्षण

यस API परीक्षण श्रृंखलामा ट्यूटोरियलहरूको अवलोकन

ट्यूटोरियल # तपाईले के सिक्नुहुनेछ
ट्यूटोरियल_#1: API परीक्षण ट्यूटोरियल : शुरुवातकर्ताहरूको लागि पूर्ण गाइड

यो गहिरो API परीक्षण ट्युटोरियलले API परीक्षण, र वेब सेवाहरूको बारेमा विस्तृत रूपमा व्याख्या गर्नेछ र तपाइँलाई तपाइँको संगठनमा API परीक्षण कसरी परिचय गर्ने भन्ने बारे सिकाउनेछ।

ट्यूटोरियल_#2: वेब सेवा ट्यूटोरियल: कम्पोनेन्ट्स, आर्किटेक्चर, प्रकार र उदाहरणहरू

यो वेबवैध र अवैध प्रतिक्रियाको लागि API बाट प्रतिक्रियाहरूको शुद्धता वास्तवमै महत्त्वपूर्ण छ। यदि 200 को स्थिति कोड (अर्थ सबै ठीक छ) परीक्षण API बाट प्रतिक्रियाको रूपमा प्राप्त भयो, तर यदि प्रतिक्रिया पाठले त्रुटि सामना गरेको छ भने, यो एक दोष हो।

थप रूपमा, यदि त्रुटि सन्देश यो आफै गलत छ, त्यसपछि यो API सँग एकीकृत गर्न खोज्ने अन्तिम ग्राहकलाई धेरै भ्रामक हुन सक्छ।

तलको स्क्रिनसटमा, प्रयोगकर्ताले अमान्य वजन प्रविष्ट गरेको छ, जुन स्वीकार्य 2267 Kgs भन्दा बढी छ। API ले त्रुटि स्थिति कोड र त्रुटि सन्देशको साथ जवाफ दिन्छ। यद्यपि, त्रुटि सन्देशले गलत तौल एकाइहरूलाई KG को सट्टा lbs को रूपमा उल्लेख गरेको छ। यो एउटा त्रुटि हो जसले अन्तिम ग्राहकलाई भ्रमित पार्न सक्छ।

(ii) लोड र प्रदर्शन परीक्षण

API हरू डिजाइनद्वारा स्केलेबल हुनको लागि हो।

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

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

तपाईंको संगठनमा एपीआई परीक्षण कसरी परिचय दिने

कुनै पनि संगठनमा एपीआई परीक्षण परिचय गर्ने प्रक्रिया कुनै अन्य परीक्षण उपकरण र फ्रेमवर्क कार्यान्वयन वा रोल आउट गर्न प्रयोग गरिने प्रक्रिया जस्तै हो।

तलको तालिकाले प्रत्येक चरणको अपेक्षित नतिजा सहित मुख्य चरणहरू संक्षेप गर्दछ।

चरण चरण अपेक्षित परिणाम
उपकरण चयन आवश्यकताहरू जम्मा गर्नुहोस् र अवरोधहरू पहिचान गर्नुहोस्

अनुसन्धानका लागि आवश्यकताहरू बुझ्नुहोस् उपयुक्त एपीआई परीक्षण उपकरणको लागि बजार।

जस्तै

कस्ता प्रकारको एपीआई परीक्षण भइरहेको छ - SOAP वा REST?

के हामीले यो भूमिकाको लागि परीक्षकलाई भाडामा लिनुपर्छ वा अवस्थित परीक्षकलाई तालिम दिन आवश्यक छ?

कस्ता प्रकारका परीक्षणहरू गरिनेछन् - कार्यात्मक, कार्यसम्पादन परीक्षण आदि।

कार्यान्वयनका लागि बजेट के हो?

उपलब्ध उपकरणहरू मूल्याङ्कन गर्नुहोस् उपलब्ध उपकरणहरू र सर्टलिस्ट 1 वा 2 उपकरणहरू तुलना गर्नुहोस् जसले आवश्यकताहरू पूरा गर्दछ।
अवधारणाको प्रमाण> सर्टलिस्ट गरिएको उपकरणको साथमा परीक्षणहरूको एक उपसमूह कार्यान्वयन गर्नुहोस्।

सरोकारवालाहरूलाई निष्कर्षहरू प्रस्तुत गर्नुहोस्।

कार्यान्वयन गरिने उपकरणलाई अन्तिम रूप दिनुहोस्।

कार्यान्वयन सुरु गर्दै तपाईको छनौट f उपकरणमा निर्भर गर्दै, तपाइँले आवश्यक उपकरण पीसी, भर्चुअल मेसिन वा सर्भरमा स्थापना गर्न आवश्यक छ।

यदि छनोटको उपकरण सदस्यतामा आधारित छ भने आवश्यक टोली सिर्जना गर्नुहोस्खाताहरू।

आवश्यक भएमा टोलीलाई तालिम दिनुहोस्।

जानुहोस् परीक्षणहरू सिर्जना गर्नुहोस्

परीक्षणहरू कार्यान्वयन गर्नुहोस्

दोषहरू रिपोर्ट गर्नुहोस्

साझा चुनौतीहरू र तिनीहरूलाई कम गर्ने तरिकाहरू

QA टोलीहरूका केही साझा चुनौतीहरूबारे छलफल गरौं। संस्थामा API परीक्षण ढाँचा कार्यान्वयन गर्ने प्रयास गर्दा सामना गर्नुहोस्।

#1) सही उपकरण छनोट गर्ने

कामको लागि सही उपकरण चयन गर्नु सबैभन्दा सामान्य चुनौती हो। त्यहाँ धेरै API परीक्षण उपकरणहरू छन् जुन बजारमा उपलब्ध छन्।

बजारमा उपलब्ध नवीनतम, सबैभन्दा महँगो उपकरण कार्यान्वयन गर्न यो धेरै आकर्षक लाग्न सक्छ- तर यदि यसले इच्छित परिणाम ल्याउन सक्दैन भने, त्यो उपकरण कुनै कामको छैन।

त्यसैले, सधैं आफ्नो संगठनात्मक आवश्यकताहरूको आधारमा 'हुनुपर्ने' आवश्यकताहरूलाई सम्बोधन गर्ने उपकरण छनौट गर्नुहोस्।

यहाँ एउटा नमूना उपकरण मूल्याङ्कन म्याट्रिक्स छ। उपलब्ध API उपकरणहरू

उपकरण मूल्य निर्धारण नोटहरू
Soap UI SoapUI खुला स्रोत (कार्यात्मक परीक्षण) को लागि नि:शुल्क संस्करण उपलब्ध छ * REST, SOAP र अन्य लोकप्रिय API र IoT प्रोटोकलहरू।

* नि:शुल्क संस्करणमा समावेश गरिएको

SOAP र REST एड-हक परीक्षण

सन्देश दावी

तान्नुहोस् र ड्रप टेस्ट सिर्जना

परीक्षण लगहरू

परीक्षण कन्फिगरेसन

रेकर्डिङबाट परीक्षण

एकाइ रिपोर्टिङ।

* सुविधाहरूको पूर्ण सूची हुन सक्छ उनीहरुमा पाइन्छवेबसाइट।

पोस्टम्यान नि:शुल्क पोस्टम्यान एप उपलब्ध * REST को लागि सबैभन्दा धेरै प्रयोग गरिएको।

* सुविधाहरू तिनीहरूको वेबसाइटमा फेला पार्न सकिन्छ।

Parasoft यो सशुल्क उपकरण हो, इजाजतपत्र खरिद गर्न आवश्यक छ र त्यसपछि स्थापना आवश्यक छ। उपकरण प्रयोग गर्न सक्नु अघि। * व्यापक API परीक्षण: कार्यात्मक, लोड, सुरक्षा परीक्षण, परीक्षण डेटा व्यवस्थापन
vREST प्रयोगकर्ताहरूको संख्यामा आधारित * स्वचालित REST API परीक्षण।

* रेकर्ड र रिप्ले।

* नक्कली API प्रयोग गरेर फ्रन्टएन्ड र ब्याकइन्डबाट निर्भरता हटाउँछ।

* शक्तिशाली प्रतिक्रिया प्रमाणीकरण।

* लोकलहोस्ट/इन्ट्रानेट/इन्टरनेटमा प्रयोग गरिएका परीक्षण अनुप्रयोगहरूको लागि काम गर्दछ।

* JIRA एकीकरण, जेनकिन्स एकीकरण स्वागर, पोस्टम्यानबाट आयात।

HttpMaster एक्सप्रेस संस्करण: डाउनलोड गर्न नि: शुल्क

व्यावसायिक संस्करण: प्रयोगकर्ताहरूको संख्यामा आधारित

* वेबसाइट परीक्षण र एपीआई परीक्षणमा मद्दत गर्दछ।

* अन्य सुविधाहरूले विश्वव्यापी प्यारामिटरहरू परिभाषित गर्ने क्षमता समावेश गर्दछ, प्रयोगकर्तालाई प्रमाणीकरण प्रकारहरूको ठूलो सेट प्रयोग गरेर डाटा प्रतिक्रिया प्रमाणीकरणको लागि जाँचहरू सिर्जना गर्ने क्षमता प्रदान गर्दछ। यसले समर्थन गर्दछ।

Runscope प्रयोगकर्ताहरूको संख्या र योजना प्रकारहरूमा आधारित

* API को अनुगमन र परीक्षणको लागि।

* सही डाटा फिर्ता भएको सुनिश्चित गर्न डाटा प्रमाणीकरणको लागि प्रयोग गर्न सकिन्छ।

* को सुविधा समावेश गर्दछकुनै पनि एपीआई लेनदेन विफलताको मामलामा ट्र्याकिङ र अधिसूचना (यदि तपाइँको अनुप्रयोगलाई भुक्तानी प्रमाणीकरण आवश्यक छ भने, यो उपकरण राम्रो विकल्प साबित हुन सक्छ)।

लोडफोकस। प्रयोगकर्ताहरूको संख्या र योजना प्रकारहरूमा आधारित * API लोड परीक्षणको लागि प्रयोग गर्न सकिन्छ - API लाई समर्थन गर्न सक्ने प्रयोगकर्ताहरूको संख्या पत्ता लगाउन केही परीक्षणहरू चलाउन अनुमति दिन्छ।

* प्रयोग गर्न सजिलो - ब्राउजर भित्र परीक्षण चलाउन अनुमति दिन्छ।

PingAPI १ परियोजनाका लागि नि:शुल्क (१,००० अनुरोध ) * स्वचालित API परीक्षण र अनुगमनका लागि लाभदायक।

#2) हराएको परीक्षण निर्दिष्टीकरण

परीक्षकको रूपमा, हामीले जान्न आवश्यक छ। अपेक्षित परिणामहरू प्रभावकारी रूपमा अनुप्रयोग परीक्षण गर्न। यो प्रायः एक चुनौती हो, किनकि अपेक्षित परिणामहरू जान्नको लागि, हामीसँग स्पष्ट सटीक आवश्यकताहरू हुन आवश्यक छ – जुन त्यस्तो होइन।

उदाहरणका लागि , तल प्रदान गरिएका आवश्यकताहरूलाई विचार गर्नुहोस्:

"अनुप्रयोगले वैध ढुवानी मिति मात्र स्वीकार गर्नुपर्छ र सबै अवैध आवश्यकताहरू अस्वीकार गरिनुपर्छ"

यी आवश्यकताहरूमा मुख्य विवरणहरू छैनन् र धेरै अस्पष्ट छन् - हामी कसरी वैध मिति परिभाषित गर्दैछौं? ढाँचाको बारेमा के हो? के हामी अन्त-प्रयोगकर्तालाई कुनै अस्वीकार सन्देश फिर्ता गर्दैछौं, आदि?

स्पष्ट आवश्यकताहरूको उदाहरण:

1) आवेदन मात्र हुनुपर्छ। वैध ढुवानी मिति स्वीकार गर्नुहोस्।

ढुवानी मिति मान्य मानिन्छ यदि योहो

  • विगतमा होइन
  • आजको मितिभन्दा ठूलो वा बराबर हो
  • स्वीकार्य ढाँचामा छ: DD/MM/YYYY

1 माथिको मापदण्ड पूरा गर्दैन अवैध मानिनुपर्छ। यदि कुनै ग्राहकले अवैध ढुवानी मिति पठाउछ भने, त्यसले निम्न त्रुटि सन्देश(हरू) सँग जवाफ दिनुपर्छ:

3.1

प्रतिक्रिया स्थिति कोड 200 होइन

त्रुटि: प्रदान गरिएको ढुवानी मिति अमान्य छ; कृपया सुनिश्चित गर्नुहोस् कि मिति DD/MM/YYYY ढाँचामा छ

3.2

प्रतिक्रिया स्थिति कोड 200 होइन

त्रुटि: प्रदान गरिएको ढुवानी मिति भित्र छ अतीत

#3) लर्निङ कर्भ

पहिले उल्लेख गरिए अनुसार, एपीआई परीक्षणको लागि दृष्टिकोण फरक छ जब GUI आधारित अनुप्रयोगहरू परीक्षण गर्दा अनुसरण गरिएको दृष्टिकोणको तुलनामा।

यदि तपाइँ एपीआई परीक्षणको लागि घरभित्र वा सल्लाहकारहरू भर्ती गर्दै हुनुहुन्छ, त्यसपछि एपीआई परीक्षण दृष्टिकोण वा एपीआई परीक्षण उपकरणको सिकाइ वक्र न्यूनतम हुन सक्छ। कुनै पनि सिकाउने वक्र, यस अवस्थामा, उत्पादन वा अनुप्रयोग ज्ञान प्राप्त गर्न सम्बन्धित हुनेछ।

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

#4) अवस्थित कौशल सेट

यसले सिधै सिक्ने कर्भको बारेमा अघिल्लो बिन्दुसँग सम्बन्ध राख्छ।

यदि एक परीक्षक बाट ट्रान्जिसन हुँदै थियो भने GUI आधारित परीक्षण, त्यसपछि परीक्षकले परीक्षण दृष्टिकोण परिवर्तन गर्न र आवश्यकता अनुसार नयाँ उपकरण वा फ्रेमवर्क सिक्न आवश्यक हुनेछ। जस्तै यदि API ले JSON ढाँचामा अनुरोधहरू स्वीकार गर्छ भने, परीक्षणहरू सिर्जना गर्न सुरु गर्नको लागि परीक्षकले JSON के हो भनेर जान्न आवश्यक हुन्छ।

केस स्टडी

कार्य

अवस्थित एप्लिकेसनलाई मापन गर्नको लागि, कम्पनीले API मा उत्पादन र मानक GUI अनुप्रयोग प्रस्ताव गर्न चाहन्थ्यो। QA टोलीलाई परीक्षण कभरेज योजना प्रदान गर्न भनिएको थियो कि तिनीहरू नियमित GUI आधारित परीक्षणहरू भन्दा बाहिर API परीक्षणहरू समायोजन गर्न तयार छन्।

चुनौतीहरू

  • कुनै पनि छैन। अन्य सफ्टवेयर उत्पादनहरूमा API आधारित वास्तुकला थियो, त्यसैले यस कार्यको वरिपरि परीक्षण समायोजन गर्न, टोलीले स्क्र्याचबाट API परीक्षण प्रक्रिया स्थापना गर्न आवश्यक छ। यसको मतलब उपकरणहरूको मूल्याङ्कन, सर्टलिस्ट, फाइनल र टोलीलाई परीक्षणका लागि तालिम दिनु पर्ने थियो।
  • उपकरण प्राप्त गर्न र कार्यान्वयन गर्नका लागि कुनै अतिरिक्त बजेट विनियोजन गरिएको थिएन। यसको मतलब यो हो कि टोलीले नि:शुल्क वा खुला-स्रोत API परीक्षण उपकरण छनोट गर्नुपर्ने थियो र अवस्थित टोलीबाट कसैलाई यो कार्य लिन तालिम दिनुपर्थ्यो।
  • एपीआई क्षेत्रहरू र डेटाका लागि कुनै आवश्यकताहरू थिएनन्।प्रमाणीकरण। आवश्यकताहरू "सम्बन्धित GUI अनुप्रयोगले जस्तै काम गर्नुपर्छ"।

जोखिमहरू कम गर्न र चुनौतीहरूको वरिपरि काम गर्न टोलीले अनुसरण गरेको दृष्टिकोण

  • QA टोलीले निम्न आवश्यकताहरू पहिचान गर्न परियोजना टोलीसँग काम गर्यो:
    • API प्रकार (REST/SOAP): REST
    • परीक्षण आवश्यक (कार्यात्मक, लोड, सुरक्षा): कार्यात्मक परीक्षण मात्र
    • स्वचालित परीक्षण आवश्यक (हो/होइन): अहिलेको लागि ऐच्छिक
    • परीक्षण रिपोर्टहरू (हो/होइन) ): आवश्यक
  • QA टोलीले अनिवार्य आवश्यकताहरूको आधारमा उपलब्ध API परीक्षण उपकरणहरूमा उपकरण मूल्याङ्कन गर्यो। पोस्टम्यान एपीआई उपकरणलाई उनीहरूको रोजाइको उपकरणको रूपमा अन्तिम रूप दिइयो किनकि यो नि:शुल्क थियो, र प्रयोग गर्न सजिलो पनि थियो, यसरी सिकाइ कर्भलाई कम गर्दै, र परीक्षणहरू स्वचालित गर्ने क्षमता थियो, र राम्रो इनबिल्ट रिपोर्टहरू लिएर आएको थियो।
  • एप्लिकेसनको परीक्षण गर्ने एउटै परीक्षकलाई पोस्टम्यानको प्रयोग गरी प्रारम्भिक परीक्षणहरू सिर्जना गर्नका लागि तालिम दिइएको थियो जसले गर्दा कुनै पनि उत्पादनको ज्ञानको कमीलाई हटाउन सकिन्छ।
  • हराएका आवश्यकताहरूलाई सम्बोधन गर्न, परियोजना टोलीले Swagger प्रयोग गरेर उच्च-स्तरको क्षेत्र-स्तर कागजातहरू निर्माण गर्यो। । यद्यपि यसले स्वीकार्य डेटा ढाँचाहरूको सर्तमा केही खाडलहरू छोड्यो र यो परियोजना टोलीसँग लिइयो र अपेक्षित ढाँचाहरूमा सहमति र दस्तावेजीकरण गरियो।

निष्कर्ष

एपीआई आधारित अनुप्रयोगहरू छन्। पछिल्लो समय लोकप्रियता हासिल गरेको छ। यी अनुप्रयोगहरू अधिक छन्परम्परागत एप्लिकेसन/सफ्टवेयरको तुलनामा स्केलेबल र अन्य एपीआई वा एप्लिकेसनहरूसँग सजिलो एकीकरणलाई अनुमति दिन्छ।

यस API परीक्षण ट्यूटोरियलले API परीक्षण, शिफ्ट बायाँ परीक्षण, वेब सेवाहरू, र वेब एपीआईको बारेमा विस्तृत रूपमा व्याख्या गरेको छ। हामीले उदाहरणहरू सहित वेब सेवाहरू बनाम वेब एपीआई बीचको भिन्नताहरू पनि अन्वेषण गर्यौं।

ट्यूटोरियलको दोस्रो भागमा, हामीले एपीआई परीक्षणको पूर्ण स्पेक्ट्रम, तपाईंको संगठनमा एपीआई परीक्षण कसरी परिचय गर्ने र केही सामान्य चुनौतीहरूबारे छलफल गर्यौं। यो प्रक्रिया तिनीहरूका लागि समाधानहरू सहित।

उदाहरणहरू सहित वेब सेवाहरूको बारेमा थप जान्नको लागि हाम्रो आगामी ट्यूटोरियल हेर्नुहोस्!!

अर्को ट्युटोरियल

सेवा ट्यूटोरियलले वास्तुकला, प्रकारहरू र amp; महत्त्वपूर्ण शब्दावलीहरू र SOAP vs REST बीचको भिन्नताहरू सहित वेब सेवाहरूको अवयवहरू। ट्यूटोरियल_#3: शीर्ष 35 ASP.Net र Web API अन्तर्वार्ता प्रश्नहरू उत्तरहरूका साथ

तपाईले सबैभन्दा लोकप्रिय बारम्बार सोधिने ASP.Net र Web API अन्तर्वार्ता प्रश्नहरूको सूची पत्ता लगाउन सक्नुहुन्छ उत्तरहरू र amp; यस ट्यूटोरियलमा शुरुआती र अनुभवी पेशेवरहरूका लागि उदाहरणहरू।

ट्यूटोरियल_#4: POSTMAN ट्यूटोरियल: API परीक्षण प्रयोग गर्दै POSTMAN

यो चरण-दर-चरण ट्यूटोरियलले POSTMAN को आधारभूत कुराहरू, यसका कम्पोनेन्टहरू र नमूना अनुरोध र amp; तपाईको सजिलो समझको लागि सरल शब्दहरूमा प्रतिक्रिया दिनुहोस्।

ट्यूटोरियल_#5: अपाचे HTTP क्लाइन्ट प्रयोग गरेर वेब सेवा परीक्षण

यो API ट्यूटोरियल वेब सेवाहरूमा विभिन्न CRUD सञ्चालनहरू प्रदर्शन गर्ने र Apache HTTP क्लाइन्ट प्रयोग गरेर वेब सेवाहरूको परीक्षण गर्ने बारे हो

API परीक्षण ट्यूटोरियल

यस खण्डले तपाईंलाई वेब सेवाहरू र वेब API को आधारभूत बुझाइ प्राप्त गर्न मद्दत गर्नेछ, जुन यस API परीक्षण शृङ्खलाका आगामी ट्यूटोरियलहरूमा प्रमुख अवधारणाहरू बुझ्न मद्दत गर्नेछ।

API ( एप्लिकेसन प्रोग्रामिङ इन्टरफेस) सबै प्रक्रियाहरू र कार्यहरूको सेट हो जसले हामीलाई डेटा वा सुविधाहरू पहुँच गरेर अनुप्रयोग सिर्जना गर्न अनुमति दिन्छ।अपरेटिङ सिस्टम वा प्लेटफार्महरू। त्यस्ता प्रक्रियाहरूको परीक्षणलाई API परीक्षण भनिन्छ।

Shift Left Testing

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

Sift Left Testing पेश गर्नु अघि, कोडिङ पूरा भएपछि र कोड परीक्षकहरूलाई डेलिभर गरिसकेपछि मात्र सफ्टवेयर परीक्षण चित्रमा आउँछ। यो अभ्यासले समयसीमा पूरा गर्न अन्तिम मिनेटको हतारको नेतृत्व गर्‍यो र यसले उत्पादनको गुणस्तरमा पनि ठूलो हदसम्म बाधा पुर्‍यायो।

यसबाहेक, गरिएका प्रयासहरू (उत्पादन अघि अन्तिम चरणमा त्रुटिहरू रिपोर्ट गर्दा) विकासकर्ताहरूले फेरि डिजाइन र कोडिङ दुवै चरणहरू पार गर्नुपर्ने भएकोले ठूलो।

सफ्टवेयर विकास जीवन चक्र (SDLC) बायाँ परिक्षण अघि

परम्परागत SDLC प्रवाह थियो: आवश्यकता – > डिजाइन -> कोडिङ -> परीक्षण।

परम्परागत परीक्षणका बेफाइदाहरू

  • परीक्षण एकदम सही छ। अन्तिम मिनेटमा बग पहिचान गर्दा धेरै लागतहरू खर्च हुन्छन्।
  • बग समाधान गर्न र उत्पादनमा प्रवर्द्धन गर्नु अघि यसलाई पुन: परीक्षण गर्न समय खर्च हुन्छ।

त्यसैले, परीक्षण चरणलाई बायाँतिर सार्नको लागि एउटा नयाँ विचार पप अप भयो जसले गर्दा बायाँ परिक्षण शिफ्ट भयो।

सुझाव गरिएको पढ्नुहोस् => बायाँ परीक्षण शिफ्ट गर्नुहोस्: Aसफ्टवेयर सफलताको लागि गोप्य मन्त्र

बायाँ शिफ्ट परीक्षणका चरणहरू

25>

बायाँ सिफ्ट परीक्षणले दोष पत्ता लगाउनेबाट दोष रोकथाममा सफल माइग्रेसन गर्यो। यसले सफ्टवेयरलाई छिटो असफल हुन र सबै असफलताहरूलाई चाँडै समाधान गर्न मद्दत गर्‍यो।

Web API

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

एपीआईले कसरी काम गर्छ?

www.makemytrip.com मा उडान बुकिङ गर्ने एकदमै सामान्य परिदृश्य लिऔं, जुन एक अनलाइन ट्राभल सेवा हो जसले धेरै एयरलाइन्सबाट जानकारी सङ्कलन गर्छ। जब तपाईं उडान बुकिङको लागि जानुहुन्छ, तपाईंले यात्रा मिति/फिर्ता मिति, कक्षा, आदि जस्ता जानकारी प्रविष्ट गर्नुहुन्छ र खोजमा क्लिक गर्नुहुन्छ।

यसले तपाईंलाई धेरै एयरलाइन्सहरूको मूल्य र तिनीहरूको उपलब्धता देखाउनेछ। यस अवस्थामा, एप्लिकेसनले धेरै एयरलाइन्सका एपीआईहरूसँग अन्तर्क्रिया गर्दछ र यसैले एयरलाइनको डेटामा पहुँच प्रदान गर्दछ।

अर्को उदाहरण हो www.trivago.com जसले विभिन्न होटलहरूको मूल्य, उपलब्धता, आदिलाई तुलना र सूचीबद्ध गर्दछ। एक विशेष शहर बाट। यस वेबसाइटले डाटाबेस पहुँच गर्न धेरै होटेलहरूको API सँग सञ्चार गर्दछ र तिनीहरूको वेबसाइटबाट मूल्यहरू र उपलब्धताहरू सूचीबद्ध गर्दछ।

तसर्थ, वेब एपीआईलाई "एक इन्टरफेसको रूपमा परिभाषित गर्न सकिन्छ जसले ग्राहक मेसिन र बीचको सञ्चारलाई सहज बनाउँछ। दवेबसर्भर”।

वेब सेवाहरू

वेब सेवाहरू (वेब ​​एपीआई जस्तै) एक मेसिनबाट अर्को मेसिनमा सेवा गर्ने सेवाहरू हुन्। तर API र वेब सेवाहरू बीचको मुख्य भिन्नता भनेको वेब सेवाहरूले नेटवर्क प्रयोग गर्ने हो।

सबै वेब सेवाहरू वेब एपीआईहरू हुन् तर सबै वेब एपीआईहरू वेब सेवाहरू होइनन् भनेर भन्न सुरक्षित छ (मा व्याख्या गरिएको छ। लेखको पछिल्लो भाग)। यसरी, वेब सेवाहरू Web API को एक उपसमूह हुन्। Web API र वेब सेवाहरू बारे थप जान्नको लागि तलको रेखाचित्रलाई सन्दर्भ गर्नुहोस्।

वेब API बनाम वेब सेवाहरू

वेब सेवाहरू वेब एपीआई

दुवै वेब एपीआई र वेब सेवाहरू ग्राहक र सर्भर बीच संचार सुविधाको लागि प्रयोग गरिन्छ। मुख्य भिन्नता उनीहरूले सञ्चार गर्ने तरिकामा मात्र आउँछ।

तिनीहरूमध्ये प्रत्येकलाई एउटा विशेष भाषामा स्वीकार्य अनुरोध निकाय चाहिन्छ, सुरक्षित जडान प्रदान गर्नमा तिनीहरूको भिन्नता, सर्भरमा सञ्चार गर्ने तिनीहरूको गति र जवाफ फर्काउने। ग्राहकलाई, आदि।

वेब सेवाहरू र वेब एपीआई बीचको भिन्नता तपाईंको सन्दर्भको लागि तल सूचीबद्ध छ।

वेब सेवा

  • वेब सेवाहरूले सामान्यतया XML (एक्सटेन्सिबल मार्कअप भाषा) प्रयोग गर्दछ, जसको मतलब तिनीहरू बढी सुरक्षित छन्।
  • वेब सेवाहरू र API हरूले डेटा प्रसारणको क्रममा SSL (सुरक्षित सकेट लेयर) प्रदान गर्ने भएकाले वेब सेवाहरू बढी सुरक्षित छन्। , तर यसले WSS (वेब ​​सेवा सुरक्षा) पनि प्रदान गर्दछ।
  • वेब सेवा वेब API को एक उपसेट हो। उदाहरणका लागि, वेब सेवाहरू प्रयोगका तीन शैलीहरूमा मात्र आधारित हुन्छन् जस्तै SOAP, REST र XML-RPC।
  • वेब सेवाहरूलाई सँधै सञ्चालन गर्न नेटवर्क चाहिन्छ।
  • वेब सेवाहरूले "एक कोड फरक अनुप्रयोगहरू" समर्थन गर्दछ। यसको अर्थ विभिन्न एपहरूमा थप जेनेरिक कोड लेखिएको हुन्छ।

वेब एपीआई

19>
  • वेब एपीआईले सामान्यतया JSON (जाभास्क्रिप्ट वस्तु नोटेशन) को प्रयोग गर्छ। जसको अर्थ वेब एपीआई छिटो छ।
  • वेब एपीआई छिटो छ किनकि JSON हल्का वजन भएको छ, XML को विपरीत।
  • वेब एपीआईहरू वेब सेवाहरूको सुपरसेट हुन्। उदाहरणका लागि, वेब एपीआईमा पनि तीनवटै प्रकारका वेब सेवाहरू उपस्थित छन्, तर यसबाहेक, यसले JSON – RPC जस्ता अन्य शैलीहरू प्रयोग गर्दछ।
  • वेब API लाई आवश्यक पर्दैन। सञ्चालन गर्नको लागि नेटवर्क।
  • वेब एपीआईले प्रणाली वा अनुप्रयोगको प्रकृति अनुसार अन्तरसञ्चालनलाई समर्थन गर्न सक्छ वा नगर्न सक्छ।
  • तपाईंको संगठनमा API परीक्षणको परिचय दिँदै

    हाम्रो दैनिक जीवनमा, हामी सबै एपीआईहरूसँग एपहरूसँग अन्तर्क्रिया गर्न अभ्यस्त छौं र तैपनि हामी अन्तर्निहित कार्यक्षमतालाई ड्राइभ गर्ने ब्याक-एन्ड प्रक्रियाहरूको बारेमा सोच्दैनौं।

    उदाहरणका लागि , हामी विचार गरौं कि तपाइँ Amazon.com मा उत्पादनहरू ब्राउज गर्दै हुनुहुन्छ र तपाइँले तपाइँलाई मनपर्ने उत्पादन/डील देख्नुहुन्छ र तपाइँ यसलाई तपाइँको Facebook नेटवर्कमा साझा गर्न चाहानुहुन्छ।

    तपाईले क्लिक गर्ने क्षण पृष्ठको सेयर खण्डमा रहेको फेसबुक आइकनमा र आफ्नो प्रविष्ट गर्नुहोस्साझा गर्नको लागि फेसबुक खाता प्रमाणहरू, तपाइँ एपीआईसँग अन्तरक्रिया गर्दै हुनुहुन्छ जसले अमेजन वेबसाइटलाई फेसबुकसँग सहज रूपमा जडान गरिरहेको छ।

    API परीक्षणमा फोकस शिफ्ट गर्नुहोस्

    एपीआई परीक्षणमा थप छलफल गर्नु अघि, कारणहरू छलफल गरौं। जसका लागि API आधारित अनुप्रयोगहरूले हालैका समयमा लोकप्रियता हासिल गरेका छन्।

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

    #1) एपीआई आधारित अनुप्रयोगहरू परम्परागत अनुप्रयोगहरू/सफ्टवेयरको तुलनामा अधिक मापनयोग्य छन्। कोड विकासको दर छिटो छ र उही API ले कुनै पनि प्रमुख कोड वा पूर्वाधार परिवर्तनहरू बिना थप अनुरोधहरू सेवा गर्न सक्छ।

    #2) विकास टोलीहरूले हरेक स्क्र्याचबाट कोडिङ सुरु गर्न आवश्यक छैन। समय तिनीहरूले एक सुविधा वा अनुप्रयोग विकास गर्न काम सुरु गर्नुहोस्। API हरू प्रायः अवस्थित, दोहोर्याउन मिल्ने प्रकार्यहरू, पुस्तकालयहरू, भण्डारण प्रक्रियाहरू, आदि पुन: प्रयोग गर्छन् र यसैले यो प्रक्रियाले तिनीहरूलाई समग्रमा थप उत्पादक बनाउन सक्छ।

    उदाहरणका लागि, यदि तपाईं विकासकर्ता हुनुहुन्छ भने ई-कमर्स वेबसाइट र तपाईं अमेजनलाई भुक्तानी प्रोसेसरको रूपमा थप्न चाहनुहुन्छ - त्यसोभए तपाईंले स्क्र्याचबाट कोड लेख्नु पर्दैन।

    तपाईंले आफ्नो वेबसाइट र Amazon API को प्रयोग गरेर एकीकरण सेटअप गर्न आवश्यक छ। एकीकरण कुञ्जीहरू र चेकआउटको समयमा भुक्तानीहरू प्रशोधन गर्न Amazon API लाई कल गर्नुहोस्।

    #3) API ले अनुमति दिन्छसमर्थित स्ट्यान्डअलोन एप्लिकेसनहरूका साथै API आधारित सफ्टवेयर उत्पादनहरूका लागि अन्य प्रणालीहरूसँग सजिलो एकीकरण।

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

    अनिवार्य जानकारी प्रदान गरेपछि, तपाईंले दरहरू प्राप्त गर्नुहोस् बटनमा क्लिक गर्दा - पछाडिको अन्त्यमा, यो रसद वेबसाइट जडान हुन सक्छ। धेरै क्यारियर र सेवा प्रदायक API हरू र स्थानहरूको गन्तव्य संयोजनको उत्पत्तिको लागि गतिशील दरहरू प्राप्त गर्न अनुप्रयोगहरूसँग।

    API परीक्षणको पूर्ण स्पेक्ट्रम

    एपीआईहरूको परीक्षण अनुरोध पठाउन प्रतिबन्धित छैन। API मा र एक्लै शुद्धता को लागी प्रतिक्रिया को विश्लेषण। APIs लाई कमजोरीहरूको लागि विभिन्न भारहरू अन्तर्गत तिनीहरूको कार्यसम्पादनको लागि परीक्षण गर्न आवश्यक छ।

    यसलाई विस्तारमा छलफल गरौं।

    (i) कार्यात्मक परीक्षण

    GUI इन्टरफेसको कमीको कारणले कार्यात्मक परीक्षण एक चुनौतीपूर्ण कार्य हुन सक्छ।

    एपीआईहरूको लागि कार्यात्मक परीक्षण दृष्टिकोण GUI आधारित अनुप्रयोगबाट कसरी फरक छ हेरौं र हामी यसको वरिपरि केही उदाहरणहरू पनि छलफल गर्नेछौं।

    a) सबैभन्दा स्पष्ट भिन्नता भनेको अन्तरक्रिया गर्न कुनै GUI छैन। सामान्यतया GUI आधारित कार्यात्मक परीक्षण गर्ने परीक्षकहरूलाई तुलना गर्दा गैर-GUI अनुप्रयोग परीक्षणमा ट्रान्जिसन गर्न अलि गाह्रो हुन्छ।कोही जो पहिले नै यससँग परिचित छ।

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

    यदि तपाइँ API मा सफलतापूर्वक जडान गर्न असमर्थ हुनुहुन्छ भने, त्यसपछि थप परीक्षण अगाडि बढ्न सक्दैन। यस प्रक्रियालाई मानक अनुप्रयोगहरूमा प्रयोगकर्ता प्रमाणीकरणसँग तुलना गर्न सकिन्छ जहाँ तपाईंलाई लग इन गर्न र अनुप्रयोग प्रयोग गर्न वैध प्रमाणहरू चाहिन्छ।

    b) परीक्षण क्षेत्र प्रमाणीकरण वा इनपुट डेटा प्रमाणीकरण धेरै महत्त्वपूर्ण छ। परीक्षण API को समयमा। यदि वास्तविक फारम-आधारित (GUI) इन्टरफेस उपलब्ध थियो भने, त्यसपछि फिल्ड प्रमाणीकरणहरू अगाडिको छेउमा वा पछाडिको छेउमा लागू गर्न सकिन्छ, जसले गर्दा प्रयोगकर्तालाई अमान्य फिल्ड मानहरू प्रविष्ट गर्न अनुमति छैन भनेर सुनिश्चित गर्न सकिन्छ।

    उदाहरणका लागि, यदि कुनै आवेदनलाई DD/MM/YYYY हुन मिति ढाँचा चाहिन्छ भने, हामी यो प्रमाणीकरण फारम सङ्कलन गर्ने जानकारीमा लागू गर्न सक्छौं कि आवेदनले वैध मिति प्राप्त गर्दैछ र प्रक्रिया गरिरहेको छ।

    यद्यपि, यो एपीआई अनुप्रयोगहरूको लागि समान छैन। हामीले यो सुनिश्चित गर्न आवश्यक छ कि API राम्रोसँग लेखिएको छ र यी सबै प्रमाणीकरणहरू लागू गर्न सक्षम छ, मान्य र अवैध डेटा बीचको भिन्नता छ र प्रतिक्रिया मार्फत अन्तिम-प्रयोगकर्तालाई स्थिति कोड र प्रमाणीकरण त्रुटि सन्देश फिर्ता गर्नुहोस्।

    c) परीक्षण गर्दै

    माथि स्क्रोल गर्नुहोस्