how when use postman pre request
इस ट्यूटोरियल में, हम सरल उदाहरणों की मदद से पोस्टमैन के पूर्व-अनुरोधों और पोस्ट रिक्वेस्ट लिपियों या टेस्ट का उपयोग कैसे और कब करें, यह बताएंगे:
इकाई परीक्षण की दुनिया के अनुरूप, प्री-रिक्वेस्ट स्क्रिप्ट कुछ भी नहीं है लेकिन एक परीक्षण निष्पादित होने से पहले सेटअप होगा। इसी तरह पोस्टमैन में, यदि आप एक निश्चित तरीके से अनुरोध को संशोधित करना चाहते हैं, तो पूर्व-अनुरोध स्क्रिप्ट उस तर्क या कोड को डालने का स्थान है जो अनुरोध निष्पादन शुरू होने से पहले गारंटी देता है।
=> यहाँ सरल डाकिया प्रशिक्षण श्रृंखला देखें।
आप क्या सीखेंगे:
डाकिया अनुरोध प्रवाह
पहले, यह समझने की कोशिश करें कि पोस्टमैन पूर्व और परीक्षण स्क्रिप्ट को अनुरोध निष्पादन के संदर्भ में कैसे सक्षम या अनुमति देता है। पोस्टमैन के पास एक शक्तिशाली रनटाइम है जो नोड जेएस आधारित है जो अनुरोध निष्पादन से पहले और बाद में स्क्रिप्टिंग क्षमताओं को जोड़ने की अनुमति देता है।
स्क्रिप्ट और कुछ नहीं बल्कि जावास्क्रिप्ट कोड है जिसे पोस्टमैन सैंडबॉक्स समझता है और वांछित के रूप में निष्पादित करता है।
पोस्टमैन अनुरोध प्रवाह को समझने के लिए नीचे दिए गए आंकड़े का संदर्भ लें।
c ++ स्ट्रिंगस्ट्रीम का उपयोग कैसे करें
यहाँ एक वीडियो ट्यूटोरियल है:
प्री-रिक्वेस्ट स्क्रिप्ट पोस्टमैन में अनुरोध निष्पादन के लिए प्रवेश बिंदु है। यदि प्री-रिक्वेस्ट स्क्रिप्ट के एक भाग के रूप में कोई स्क्रिप्ट / लॉजिक जोड़ा जाता है, जिसे पहले निष्पादित किया जाता है, जिसके बाद वास्तविक अनुरोध निष्पादन होता है और प्रतिक्रिया प्राप्त होने के बाद, परीक्षण या पोस्ट अनुरोध स्क्रिप्ट निष्पादित हो जाती हैं।
लिपियों के पूर्व अनुरोध
प्री-रिक्वेस्ट स्क्रिप्ट्स तर्क या कोड का टुकड़ा है जो अनुरोध निष्पादन शुरू होने से पहले निष्पादित करने की गारंटी है। यह निष्पादन का अनुरोध करने के लिए गतिशील व्यवहार को जोड़ने की अनुमति देता है।
यहां यह नोट करना महत्वपूर्ण है कि, प्री-रिक्वेस्ट स्क्रिप्ट को एक संग्रह स्तर पर भी लागू किया जा सकता है, जिसका परोक्ष रूप से मतलब है कि प्री-रिक्वेस्ट स्क्रिप्ट उन सभी अनुरोधों पर लागू होगी जो उस संग्रह का हिस्सा हैं।
संग्रह स्तर पूर्व-अनुरोध स्क्रिप्ट और परीक्षण होने पर अनुरोध प्रवाह को देखने के लिए कृपया नीचे दिए गए आंकड़े को देखें।
प्री-रिक्वेस्ट स्क्रिप्ट का उपयोग कब करें?
पूर्व अनुरोध स्क्रिप्ट आम तौर पर तब उपयोगी होती हैं जब किसी अनुरोध को निष्पादित करने से पहले पूर्व प्रसंस्करण की आवश्यकता होती है।
# 1)उदाहरण के लिए, मान लीजिए कि आपका अनुरोध एक सुरक्षा टोकन की अपेक्षा करता है जिसे किसी तृतीय पक्ष सर्वर से पुनर्प्राप्त करने की आवश्यकता होती है और जैसा कि यह मूल्य प्रत्येक अनुरोध निष्पादन के साथ बदलता है, इसे पर्यावरण / वैश्विक चर के साथ भी बरकरार नहीं रखा जा सकता है।
प्री-रिक्वेस्ट स्क्रिप्ट इस तरह के लॉजिक को निष्पादित करने के लिए सही जगह है और फिर अनुरोध निष्पादन के साथ ही इसका उपयोग करें।
आइए इस मामले में पूर्व-अनुरोध स्क्रिप्ट का उपयोग करने का एक उदाहरण देखें। हम वर्णन करने के लिए समान GET API समापन बिंदु का उपयोग करेंगे https://reqres.in/api/users//DrandomVal}}
यहाँ {{randomVal}} 1 से 10 के बीच का एक यादृच्छिक पूर्णांक है जिसकी गणना पूर्व-अनुरोध स्क्रिप्ट में की जाएगी।
यहाँ लिपि प्रवाह है।
- पूर्व-अनुरोध स्क्रिप्ट टैब में तर्क जोड़ें। 1 t0 10 के बीच एक यादृच्छिक संख्या उत्पन्न करें।
var random = Math.floor(Math.random() * 10); pm.variables.set('randomVal',random)
- एक पर्यावरण या स्थानीय चर में उत्पन्न यादृच्छिक संख्या को स्टोर करें। उपरोक्त कोड स्निपेट में, आप देख सकते हैं कि हमने 1 और 10 के बीच एक यादृच्छिक मान उत्पन्न किया है और इसे 'randomVal' नामक स्थानीय चर में संग्रहीत किया है।
- अनुरोध बॉडी के एक भाग के रूप में पर्यावरण चर का उपयोग करें।
- अनुरोध को निष्पादित करें।
- परिणाम को मान्य करें। आप अनुरोध को कई बार हिट करने का प्रयास कर सकते हैं और उपयोगकर्ता के विभिन्न मूल्यों के लिए हिट होने वाले अनुरोध को देख सकते हैं जो यादृच्छिक चर पूर्व-स्क्रिप्ट के माध्यम से उत्पन्न हुआ।
#दो) जब आप कुछ शीर्ष लेख संबंधित कार्रवाई चाहते हैं, तो पूर्व अनुरोध स्क्रिप्ट भी उपयोगी होती हैं। उदाहरण के लिए, हेडर से अनुरोध है कि एक सत्र आईडी की उम्मीद की जाए जो बेतरतीब ढंग से उत्पन्न हो और कुछ अन्य रूपांतरण जैसे आधार 64 एन्कोडिंग या सामान्य रूप से प्रसंस्करण की आवश्यकता हो।
संग्रह के साथ पूर्व-अनुरोध और पोस्ट-अनुरोध लिपियों का उपयोग करना
जैसा कि ऊपर चर्चा की गई है, प्री-रिक्वेस्ट स्क्रिप्ट को संग्रह स्तर पर भी लागू किया जा सकता है। वे स्क्रिप्ट उन सभी अनुरोधों पर लागू होंगी जो संग्रह में उपलब्ध हैं। प्री-रिक्वेस्ट स्क्रिप्ट, टेस्ट या पोस्ट-रिक्वेस्ट स्क्रिप्ट के समान भी एक संग्रह में लागू किया जा सकता है।
आइए संग्रह-स्तर के पूर्व-अनुरोध स्क्रिप्ट और परीक्षणों के एक चित्रण पर नज़र डालें, और संग्रह के अंदर प्रत्येक अनुरोध के लिए स्क्रिप्ट को कार्रवाई में देखें।
हम निम्नलिखित परीक्षण समापन बिंदुओं के साथ 2 अनुरोधों के साथ एक डाकिया संग्रह का उपयोग करेंगे।
- प्राप्त https://reqres.in/api/users/1
- पद https://reqres.in/api/register JSON के रूप में अनुरोध फ़ील्ड के साथ 2 फ़ील्ड यानी emailId और पासवर्ड।
हम इन अनुरोधों के लिए निम्न संग्रह स्तर स्क्रिप्ट जोड़ेंगे।
- पूर्व अनुरोध: 'सामग्री-प्रकार' नामक एक नया हेडर जोड़ें और हेडर के मूल्य को 'एप्लिकेशन / json' पर सेट करें।
- परीक्षा: परीक्षण या पोस्ट अनुरोध सत्यापन के रूप में, हम जाँचेंगे कि प्रतिक्रिया वापस आ रही है या नहीं HTTP स्थिति कोड 200 है या नहीं।
कृपया नीचे दिए गए चरणों का पालन करें
# 1) उपरोक्त अनुरोध GET और POST के साथ एक नया डाकिया संग्रह बनाएं।
#दो) दाएँ क्लिक करें संग्रह -> संपादन का चयन करें संग्रह स्तर पर पूर्व-अनुरोध स्क्रिप्ट और परीक्षण जोड़ने के लिए।
सेवा मेरे) प्री-रिक्वेस्ट स्क्रिप्ट के लिए, कलेक्शन एडिट विंडो में प्री-रिक्वेस्ट स्क्रिप्स टैब चुनें और नीचे की स्क्रिप्ट जोड़ें (यह स्क्रिप्ट कलेक्शन के अंदर सभी रिक्वेस्ट के लिए वैल्यू एप्लीकेशन / JSON के साथ 'कंटेंट-टाइप' नामक हेडर जोड़ेगी) ।
pm.request.headers.add({ key: 'Content-Type', value: 'application/json' });
बी) परीक्षण या पोस्ट-अनुरोध स्क्रिप्ट जोड़ने के लिए, 'टेस्ट' टैब में नीचे की स्क्रिप्ट जोड़ें। (यह स्क्रिप्ट संग्रह के अंदर मौजूद सभी अनुरोधों के लिए HTTP स्थिति 200 के साथ प्रतिक्रिया को मान्य करने के लिए एक परीक्षण जोड़ेगी)।
pm.test('Status code is 200', function () { pm.response.to.have.status(200); });
सी) एक बार स्क्रिप्ट जुड़ जाने के बाद किए गए परिवर्तनों को सहेजने के लिए 'अपडेट' पर क्लिक करें।
मर्ज सॉर्ट सोर्स कोड c ++
# 3) अब, संग्रह के अंदर अनुरोधों को चलाने का प्रयास करें और देखें कि संग्रह स्तर पर निर्दिष्ट पूर्व-अनुरोध स्क्रिप्ट और परीक्षण ठीक से सेट किए गए हैं या नहीं।
# 4) पहला GET अनुरोध खोलें और उस पर क्लिक करके निष्पादित करें 'भेजें' बटन। अनुरोध शीर्षलेख देखने के लिए, हम पोस्टमैन कंसोल का उपयोग कर सकते हैं, जो पोस्टमैन एप्लिकेशन के माध्यम से जाने वाले सभी अनुरोधों के लिए पूर्ण अनुरोध-प्रतिक्रिया विवरण दिखाता है।
हम बाद में पोस्टमैन कंसोल पर विस्तार से चर्चा करेंगे, लेकिन इस ट्यूटोरियल में, हम इसका उपयोग अनुरोध हेडर को मान्य करने के लिए करेंगे।
कंसोल खोलने के लिए, या तो पोस्टमैन एप्लिकेशन के बाईं ओर कंसोल आइकन पर क्लिक करें या विंडो मेनू से कंसोल विकल्प चुनें (कृपया ध्यान दें कि इसी तरह के विकल्प विंडोज ओएस के साथ-साथ पोस्टमैन एप्लिकेशन के लिए भी उपलब्ध हैं)।
# 5) पोस्ट-अनुरोध स्क्रिप्ट या परीक्षणों को मान्य करने के लिए, बस निष्पादित अनुरोध के 'टेस्ट' टैब को सत्यापित करें और आपको संग्रह स्तर पर जोड़े गए स्थिति कोड को 200 के लिए सत्यापित करने के लिए परीक्षण देखना चाहिए।
संग्रह स्तर लिपियों के साथ, हमने जो हासिल किया है,
- संग्रह स्तर पर पूर्व-अनुरोध स्क्रिप्ट और परीक्षणों को जोड़ना उन्हें बनाए रखना आसान बनाता है। उदाहरण, सभी अनुरोधों में सामान्य हेडर जोड़ना, तीसरे पक्ष के माध्यम से अनुरोधों के लिए सत्र टोकन बनाना, आदि शामिल हैं।
- पुनरावृत्ति से बचने के लिए सामान्य स्क्रिप्ट / परीक्षण जैसे कि प्रतिक्रिया कोड को मान्य करने के लिए संग्रह स्तर पर रखा जा सकता है।
निष्कर्ष
इस ट्यूटोरियल में, हम प्री-रिक्वेस्ट स्क्रिप्ट्स और टेस्ट या पोस्ट रिक्वेस्ट स्क्रिप्ट्स में आ गए। हम पुनरावृत्ति से बचने के लिए और संग्रह स्तर पर ही सामान्य लिपियों को रखने के लिए संग्रह स्तर पर इन लिपियों का उपयोग करने के एक उदाहरण के माध्यम से भी चले।
प्री-रिक्वेस्ट स्क्रिप्ट और टेस्ट दोनों ही पोस्टमैन की एक बहुत ही शक्तिशाली और महत्वपूर्ण विशेषता है और वे विशेष रूप से REST- आधारित एपीआई एंडपॉइंट्स के लिए एंड-टू-एंड इंटीग्रेशन टेस्ट का अंत बनाने में बहुत अधिक मूल्य जोड़ते हैं।
=> स्क्रैच से पोस्टमैन जानने के लिए यहां जाएं
अनुशंसित पाठ
- पोस्टमैन ट्यूटोरियल: एपीआई टेस्ट पोस्टमैन का उपयोग करना
- विभिन्न एपीआई प्रारूपों के परीक्षण के लिए पोस्टमैन का उपयोग कैसे करें?
- डाकिया में दावे के साथ स्वचालित प्रतिक्रिया प्रतिक्रिया
- JMeter में एफ़टीपी अनुरोध के साथ कार्य करना
- जेएमटर में एक्सपैथ एक्सट्रैक्टर पोस्ट-प्रोसेसर
- फाइल में स्टोर रिक्वेस्ट और रिस्पांस डेटा के लिए एक त्वरित साबुन गाइड - साबुनापी ट्यूटोरियल # 15
- JMeter में पोस्ट प्रोसेसर का उपयोग करना (नियमित अभिव्यक्ति एक्सट्रैक्टर)
- डाकिया संग्रह: आयात, निर्यात और उत्पन्न कोड नमूने