Web_Reg_Save_Param उदाहरण के साथ लोडरनर में सहसंबंध

विषय - सूची:

Anonim

सहसंबंध क्या है?

सहसंबंध, जैसा कि नाम से पता चलता है, दो चर या संस्थाओं के बीच संबंध को परिभाषित करने का एक तंत्र है। एक शब्दकोश इसे "दो या दो से अधिक चर के बीच सांख्यिकीय संबंध जैसे कि दूसरे चर में व्यवस्थित परिवर्तन के साथ व्यवस्थित परिवर्तन" के रूप में परिभाषित करता है।

इस ट्यूटोरियल में हम सीखेंगे

  • हमें सहसंबंध की आवश्यकता क्यों है?
  • स्वचालित सहसंबंध
  • मैनुअल सहसंबंध
  • समझ Web_reg_save_param फ़ंक्शन

हमें सहसंबंध की आवश्यकता क्यों है?

आइए निम्नलिखित परिदृश्य के साथ सह-संबंध को समझते हैं।

विचार करें कि आप लोडरनर का उपयोग करके स्क्रिप्ट रिकॉर्ड कर रहे हैं।

क्लाइंट-सर्वर संचार

  1. रिकॉर्ड के दौरान, क्लाइंट सत्र शुरू करने के लिए सर्वर को एक अनुरोध भेजता है
  2. एक सर्वर अनुरोध प्राप्त करता है और एक नया सत्र आईडी एबीसी आवंटित करता है
  3. ग्राहक स्क्रिप्ट में सत्र आईडी एबीसी संग्रहीत करता है।
  4. क्लाइंट आईडी एबीसी के साथ सत्र शुरू करता है और इसे रिकॉर्ड करने की अनुमति देने के लिए एक सर्वर को अनुरोध भेजता है
  5. सर्वर ID ABC को पहचानता है और क्लाइंट को स्क्रिप्ट रिकॉर्ड करने की अनुमति देता है

  1. अब, रिप्ले के दौरान क्लाइंट-सर्वर संचार का अध्ययन करते हैं
  2. रीप्ले के दौरान, एक ग्राहक सत्र शुरू करने के लिए सर्वर को एक अनुरोध भेजता है
  3. एक सर्वर अनुरोध प्राप्त करता है और एक नया सत्र आईडी XYZ आवंटित करता है
  4. एक क्लाइंट पहले से रिकॉर्ड किए गए सत्र आईडी एबीसी के साथ सत्र शुरू करता है और इसे रिकॉर्ड करने की अनुमति देने के लिए सर्वर को अनुरोध भेजता है
  5. एक सर्वर ID ABC की पहचान करने में असमर्थ है क्योंकि वह ID XYZ से अपेक्षा कर रहा था कि उसने आवंटित किया है और सत्र विफल हो गया है।

हमें एक समाधान की आवश्यकता है, जो रन-टाइम पर भेजे गए डायनेमिक मान को पार्स करने के लिए और इस मान को सर्वर पर वापस लौटाए। इस समाधान के साथ क्लाइंट-सर्वर संचार कैसा दिखेगा

  1. रीप्ले के दौरान, एक ग्राहक सत्र शुरू करने के लिए सर्वर को एक अनुरोध भेजता है
  2. एक सर्वर अनुरोध प्राप्त करता है, और एक नया सत्र आईडी ZZZ आवंटित करता है
  3. एक ग्राहक अनुरोध से इस नए सत्र आईडी ZZZ को पार्स करता है।
  4. एक क्लाइंट आईडी ZZZ के साथ सत्र शुरू करने के लिए एक अनुरोध भेजता है
  5. एक सर्वर आईडी ZZZ को पहचानता है और क्लाइंट को स्क्रिप्ट को फिर से देखने की अनुमति देता है

यह और कुछ नहीं बल्कि सहसंबंध है

यदि वीडियो उपलब्ध नहीं है तो यहां क्लिक करें

वोगेन के मामले में, सहसंबंध एक प्रतिक्रिया और किसी पूर्ववर्ती अनुरोध के बीच एक बाध्यकारी संबंध है।

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

सरल शब्दों में, सहसंबंध का उपयोग करके समाधान है:

  1. एक कदम से उत्पादन मूल्य पर कब्जा
  2. बाद के सभी चरणों के लिए इनपुट के रूप में सेवा करने के लिए ऊपर दिए गए मूल्य का उपयोग करें

वोगेन / लोडरनर में सहसंबंध को 2 श्रेणियों में वर्गीकृत किया गया है:

  • स्वचालित सहसंबंध
  • मैनुअल सहसंबंध

स्वचालित सहसंबंध

लोडरनर स्वचालित फैशन में सहसंबंध आसानी से करने के लिए एक तंत्र प्रदान करता है।

VUGEN को आपको रिकॉर्ड की गई स्क्रिप्ट को कम से कम दो बार चलाने की आवश्यकता होगी ताकि यह आंतरिक रूप से सर्वर प्रतिक्रिया में भिन्न मूल्यों की तुलना कर सके।

स्वचालित सहसंबंध को 3 श्रेणियों में वर्गीकृत किया जा सकता है:

  • ऑटो-डिटेक्ट सहसंबंध
  • नियम-आधारित सहसंबंध
  • सभी विवरणों को सहसंबंधित करना
नियम का नाम कब इस्तेमाल करें
ऑटो-डिटेक्ट सहसंबंध HP LoadRunner द्वारा समर्थित एप्लिकेशन सर्वर के लिए डायनेमिक डेटा का पता लगाएँ और सहसंबंधित करें
नियम आधारित गैर-समर्थित एप्लिकेशन सर्वर के साथ काम करते समय उपयोग किया जाता है जिसके लिए संदर्भ ज्ञात है।
सहसंबंधी सभी नेत्रहीन फैशन में सभी गतिशील डेटा को सहसंबंधित करने में मदद करता है।

हालांकि स्वचालित सहसंबंध सरल लगता है, यह त्रुटि-प्रवण हो सकता है और 5% से अधिक मामलों में काम नहीं करता है। मैन्युअल सहसंबंध का उपयोग करना हमेशा उचित होता है।

रिकॉर्डिंग के समय स्वचालित सहसंबंध को कॉन्फ़िगर करने के लिए, स्क्रिप्ट के रिकॉर्ड होने के बाद रिकॉर्ड टाइम सेटिंग में कॉन्फ़िगरेशन के नीचे प्रदर्शन करें।

रिकॉर्ड => रिकॉर्डिंग विकल्प पर क्लिक करें (या Ctrl + F7 पर क्लिक करें),

>

नीचे विंडो खुल जाएगी:

सहसंबंध पर क्लिक करें => कॉन्फ़िगरेशन - नीचे विंडो खुल जाएगी।

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

आप RULES पर भी क्लिक कर सकते हैं, आप नीचे देखेंगे:

कार्य करने के लिए स्वचालित सहसंबंध के लिए, आपको यह सुनिश्चित करने की आवश्यकता है कि नियम स्कैन की जाँच की गई है। यदि आप स्वचालित रूप से पाए गए मानों के संबंध में क्लिक करते हैं, तो एक बार सहसंबंधी उम्मीदवार मिल जाने के बाद VUGEN आपको विकल्प के साथ संकेत नहीं देगा।

हम बाद में सहसंबंध के लिए उपयोग किए जाने वाले एपीआई को समझेंगे। हालांकि, पाठ तुलना की बजाय HTML तुलना का उपयोग करना उचित है।

एक बार जब आप कोई नियम चुन लेते हैं, तो विंडो बंद करने के लिए ओके बटन पर क्लिक करें।

मेनू से क्लिक करें और VUGEN नए कॉन्फ़िगरेशन के साथ स्क्रिप्ट (रिकॉर्ड किए बिना) पुन: उत्पन्न करेगा। सहसंबंध को संभालने के लिए VUGEN अपने आप कोड का एक आवश्यक टुकड़ा जोड़ देगा। हम मैनुअल सहसंबंध में अधिक विस्तार से नमूने को देखेंगे।

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

स्क्रिप्ट को स्वतः-संबद्ध करने के लिए चरण:

  1. एक स्क्रिप्ट रिकॉर्ड करें
  2. रीप्ले की स्क्रिप्ट
  3. सहसंबंधित मूल्यों की पहचान करें
  4. मानों का चयन करें और स्वतः-सहसंबंधी बटन पर क्लिक करें
  5. स्क्रिप्ट को फिर से चलाकर सत्यापित करें। एक सफल रन का मतलब सफल सहसंबंध है।

टिप:

  • सहसंबंध आपकी स्क्रिप्ट को विभिन्न मूल्यों के साथ चलाने में मदद करता है
  • सहसंबंध भी आपकी स्क्रिप्ट के आकार को कम करता है

मैनुअल सहसंबंध

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

  1. कैप्चर करने के लिए मान निर्धारित करें
  2. कैप्चर करने के लिए मान के दाईं और बाईं पाठ सीमाएँ खोजें (WEB)
  3. पाठ सीमाओं के किस घटना का उपयोग किया जाना चाहिए
  4. स्क्रिप्ट के लिए एक web_reg_save_param फ़ंक्शन जोड़ें, कोड के टुकड़े के ऊपर जो पृष्ठ को कैप्चर करने के लिए मान के साथ अनुरोध करता है
  5. फ़ंक्शन में एक पैरामीटर नाम, बाईं सीमा, दाईं सीमा और घटना जोड़ें
  6. हर बार होने वाली स्क्रिप्ट में डायनामिक वैल्यू को परिमित करें
  7. सही निष्पादन सत्यापित करें
web_reg_save_param ("OracleAppJSESSIONID3","LB / IC = JSESSIONID =","आरबी / आईसी =;""ऑर्ड = एल","खोज = शीर्ष लेख","RelFrameId = l",LAST);web_reg_save_param ("Siebel_Analytic_ViewState2","LB / IC = ViewState \" value = \ "","आरबी / आईसी = \","ऑर्ड = 1","खोज = निकाय","RelFrameId = l",LAST);

मैनुअल सहसंबंध VUser तुलना द्वारा किया जा सकता है। VUser तुलना सहसंबंध की तुलना विधि में चरणों को नीचे के रूप में विभाजित किया जा सकता है:

  1. उन गतिशील मूल्यों को पहचानें जिन्हें सहसंबद्ध होने की आवश्यकता है
  2. डायनामिक मान वाले सर्वर की प्रतिक्रिया प्राप्त करें
  3. एक पैरामीटर में डायनामिक मान कैप्चर करें
  4. डायनामिक मान की प्रत्येक घटना को पैरामीटर के साथ बदलें
  5. परिवर्तन सत्यापित करें

समझ Web_reg_save_param फ़ंक्शन

वोगेन उम्मीदवारों को सहसंबंधित करने के लिए कई कार्य या एपीआई प्रदान करता है, जिसमें शामिल हैं:

  • web_reg_save_param
  • web_reg_save_param_ex
  • web_reg_save_param_regexp
  • web_reg_save_param_xpath

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

यहां हम फ़ंक्शन विवरण के साथ जाते हैं:

web_reg_save_param (पैरामीटर नाम, वाम सीमा, सही सीमा)

गुण की सूची

Convert: The possible values are:

HTML_TO_URL: convert HTML-encoded data to a URL-encoded data format

HTML_TO_TEXT: convert HTML-encoded data to plain text format; this attribute is optional.

Ignore Redirections: If "Ignore Redirections=Yes" is specified and the server response is redirection information (HTTP status code 300-303, 307), the response is not searched. Instead, after receiving a redirection response, the GET request is sent to the redirected location, and the search is performed on the response from that location.

This attribute is optional. The default is "Ignore Redirections=No".

LB: The left boundary of the parameter or the dynamic data. If you do not specify an LB value, it uses all of the characters from the beginning of the data as a boundary. Boundary parameters are case-sensitive. To further customize the search text, use one or more text flags. This attribute is required. See the Boundary Arguments section.

NOTFOUND: The handling option when a boundary is not found, and an empty string is generated.

"Not found=error", the default value, causes an error to be raised when a boundary is not found.

"Not found=warning" ("Not found=empty" in earlier versions), does not issue an error. If the boundary is not found, it sets the parameter count to 0 and continues executing the script. The "warning" option is ideal if you want to see if the string was found, but you do not want the script to fail.

Note: If Continue on Error is enabled for the script, then even when NOTFOUND is set to "error", the script continues when the boundary is not found, but an error message is written to the extended log file.

This attribute is optional as well.

ORD: Indicates the ordinal position or instance of the match. The default instance is 1. If you specify "All," it saves the parameter values in an array. This attribute is optional.

Note: The use of Instance instead of ORD is supported for backward compatibility, but deprecated.

RB: The right boundary of the parameter or the dynamic data. If you do not specify an RB value, it uses all of the characters until the end of the data as a boundary. Boundary parameters are case-sensitive. To further customize the search text, use one or more text flags. This attribute is required. See the Boundary Arguments section.

RelFrameID: The hierarchy level of the HTML page relative to the requested URL. The possible values are ALL or a number. Click RelFrameID Attribute for a detailed description. This attribute is optional.

Note: RelFrameID is not supported in GUI level scripts.

SaveLen : पैरामीटर को सहेजने के लिए, निर्दिष्ट ऑफसेट से उप-स्ट्रिंग की लंबाई। यह विशेषता वैकल्पिक है। डिफ़ॉल्ट -1 है, जो स्ट्रिंग के अंत में सहेजने का संकेत देता है।

SaveOffset : पैरामीटर को सहेजने के लिए, मान के उप-स्ट्रिंग की ऑफसेट। ऑफसेट मान गैर-नकारात्मक होना चाहिए। डिफ़ॉल्ट है 0. यह विशेषता वैकल्पिक है।

खोज: सीमांकित डेटा की खोज करने के लिए खोज का दायरा। संभावित मान हेडर हैं (केवल हेडर खोजें), बॉडी (केवल बॉडी डेटा खोजें, हेडर नहीं), कोई संसाधन नहीं (केवल HTML निकाय खोजें, सभी हेडर और संसाधनों को छोड़कर), या सभी (खोज निकाय, हेडर और संसाधन) । डिफ़ॉल्ट मान सभी है। यह विशेषता वैकल्पिक है लेकिन आमतौर पर पसंद की जाती है।