paint-brush
प्रदर्शन परीक्षण में थ्रूपुट: यह महत्वपूर्ण क्यों हैद्वारा@qalified

प्रदर्शन परीक्षण में थ्रूपुट: यह महत्वपूर्ण क्यों है

द्वारा QAlified7m2023/08/02
Read on Terminal Reader

बहुत लंबा; पढ़ने के लिए

सॉफ़्टवेयर परीक्षक अनुप्रयोगों की गुणवत्ता की जाँच करने के लिए कई तकनीकों का अभ्यास करते हैं। उनमें से एक प्रदर्शन परीक्षण है, जहां टीम सॉफ्टवेयर की गति, प्रतिक्रिया समय, स्केलेबिलिटी और विश्वसनीयता का परीक्षण करती है। थ्रूपुट एक प्रमुख मीट्रिक है जो दिखाता है कि एक सॉफ़्टवेयर एप्लिकेशन किसी विशिष्ट समय (सेकंड, मिनट या घंटे) में कितने अनुरोधों को संभाल सकता है।
featured image - प्रदर्शन परीक्षण में थ्रूपुट: यह महत्वपूर्ण क्यों है
QAlified HackerNoon profile picture
0-item

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

इस लेख में, हम प्रदर्शन परीक्षण में थ्रूपुट के बारे में मुख्य बातों पर चर्चा करने जा रहे हैं।

प्रदर्शन परीक्षण में थ्रूपुट की मूल बातें

विवरण शुरू करने से पहले, आइए प्रदर्शन परीक्षण की कुछ आवश्यक बातों पर एक नज़र डालें।

प्रदर्शन परीक्षण क्यों?

प्रदर्शन परीक्षण महत्वपूर्ण है क्योंकि:


  • आमतौर पर रिपोर्ट की जाने वाली तार्किक या कार्यात्मक समस्याओं के अलावा, एप्लिकेशन नेटवर्क समस्याओं से भी जूझते हैं जो उनकी विश्वसनीयता निर्धारित करते हैं।


  • ग्राहक आसानी से निराश हो जाते हैं जब उनका एप्लिकेशन एक्सेसिबिलिटी अनुभव अच्छा नहीं होता है।


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


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

आपको प्रदर्शन परीक्षण कब शुरू करना चाहिए?

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


एप्लिकेशन के परिनियोजन के बाद प्रदर्शन में समस्याओं का पता लगाने का अर्थ है समस्याओं को ठीक करने के लिए बहुत सारे कार्य घंटे। तो यह बहुत महंगा हो सकता है.


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


अनुप्रयोगों के प्रदर्शन परीक्षण के लिए विभिन्न उपकरण और मानदंड हैं। यहां हम एक महत्वपूर्ण उपाय यानी थ्रूपुट के बारे में बात करेंगे।

प्रदर्शन परीक्षण में थ्रूपुट क्या है?

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


प्रदर्शन परीक्षण की कुछ बुनियादी बातें हैं जिन्हें प्रक्रिया के दौरान मापने की आवश्यकता है। थ्रूपुट उनमें से एक है . आइए जानें कि प्रदर्शन परीक्षण में थ्रूपुट क्या है।

थ्रूपुट एक प्रमुख मीट्रिक है जो दिखाता है कि एक सॉफ़्टवेयर एप्लिकेशन किसी विशिष्ट समय (सेकंड, मिनट या घंटे) में कितने अनुरोधों को संभाल सकता है।

परीक्षण शुरू करने से पहले, हमें एक यथार्थवादी प्रदर्शन थ्रूपुट लक्ष्य निर्धारित करने की आवश्यकता है, ताकि हम अधिक सटीक और विश्वसनीय परिणाम प्राप्त कर सकें।


यथार्थवादी थ्रूपुट निर्धारित करने के लिए ये कुछ महत्वपूर्ण कारक हैं:


  • उपयोगकर्ताओं की अनुमानित मात्रा और प्रकार जो एप्लिकेशन या वेबसाइट का उपयोग करने जा रहे हैं।


  • उपयोगकर्ता का व्यवहार, यानी, वे एप्लिकेशन का उपयोग करके कौन से कार्य करने जा रहे हैं।


  • कनेक्शन प्रकार जो सिस्टम की प्रतिक्रिया और अंततः उपयोगकर्ता अनुभव को भी प्रभावित करने वाले हैं।


  • सिस्टम पर रुकावटों और देरी का प्रभाव.

वास्तविक जीवन परिदृश्य में थ्रूपुट

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


मान लीजिए कि "यम्मी बर्गर्स" के स्टॉल में तीन कर्मचारी हैं, और प्रत्येक कर्मचारी को एक ग्राहक को भोजन परोसने में हमेशा 5 मिनट लगते हैं।


इसलिए, यदि उनके पास तीन ग्राहकों को तीन कर्मचारियों द्वारा सेवा प्रदान करने के लिए पंक्तिबद्ध किया गया है, तो इसका मतलब है कि "यम्मी बर्गर" 5 मिनट में तीन ग्राहकों को भोजन परोस सकता है।


इसलिए, अगर हमें "यम्मी बर्गर" की प्रदर्शन रिपोर्ट बनाने की ज़रूरत है, तो यह दिखाएगा कि इसका थ्रूपुट प्रति पांच मिनट में तीन ग्राहक है।


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


जैसे-जैसे अधिक ग्राहक भोजन के लिए कतार में खड़े होते हैं, उन्हें कतार बनाकर अपनी बारी का इंतजार करना पड़ता है।

यही अवधारणा वेब एप्लिकेशन के परीक्षण पर भी लागू होती है।


यदि किसी वेब एप्लिकेशन को प्रति सेकंड 100 अनुरोध प्राप्त होते हैं, लेकिन यह प्रति सेकंड केवल 70 अनुरोधों को संभाल सकता है, तो शेष 30 अनुरोधों को कतार में प्रतीक्षा करनी होगी।


प्रदर्शन परीक्षण में, हम थ्रूपुट को "प्रति सेकंड लेनदेन" या टीपीएस के रूप में दर्शाते हैं।

प्रदर्शन परीक्षण JMeter में थ्रूपुट:

किसी सॉफ़्टवेयर एप्लिकेशन के प्रदर्शन का परीक्षण करने के लिए Apache JMete r का उपयोग करना काफी लोकप्रिय है। JMeter समवर्ती उपयोगकर्ताओं की अधिकतम संख्या निर्धारित करने में सहायक है जिसे एप्लिकेशन संभाल सकता है और प्रदर्शन परीक्षण के लिए ग्राफिकल विश्लेषण भी प्रदान करता है।


जेएमटर थ्रूपुट के मूल्य को रिकॉर्ड करने के कई तरीके प्रदान करता है। यहां कुछ JMeter श्रोता दिए गए हैं जिनका उपयोग आप इस उद्देश्य के लिए कर सकते हैं:


  • सारांश रिपोर्ट
  • समग्र रिपोर्ट
  • समग्र ग्राफ़
  • ग्राफ़ परिणाम


JMeter एक टाइमर घटक, ' कॉन्स्टेंट थ्रूपुट टाइमर' भी प्रदान करता है, जिसका उपयोग आप एप्लिकेशन के लोड का परीक्षण करने के लिए प्रति सेकंड लेनदेन (टीपीएस) का मूल्य निर्धारित करने के लिए कर सकते हैं।


अब, हम JMeter का उपयोग करके प्रदर्शन परीक्षण में थ्रूपुट का उपयोग दिखाएंगे। मान लीजिए कि हम 100 समवर्ती थ्रेड्स के साथ एक नमूना परीक्षण करने जा रहे हैं और थ्रूपुट के मूल्य को ट्रैक करेंगे।


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

1. परीक्षण का विन्यास

इस परीक्षण में, हम पाँच थ्रेडग्रुप तत्वों को परिभाषित करने जा रहे हैं। इनमें से प्रत्येक तत्व का एक अलग रैंप-अप समय होगा यानी, 0, 15, 25, 35, और 45। रैंप-अप समय प्रत्येक थ्रेड को शुरू करने की अवधि है। हम इन थ्रेडग्रुप तत्वों में 100 उपयोगकर्ताओं को कॉन्फ़िगर करेंगे।


यदि हम बड़ी संख्या में उपयोगकर्ताओं को कॉन्फ़िगर करना चाहते हैं, तो अधिक रैंप-अप समय की आवश्यकता होगी।


इन थ्रेड समूहों में एक HTTP सैंपलर होगा जो एक सैंपल वेबसाइट (मान लीजिए www.samplesite.com) के होमपेज पर अनुरोध उत्पन्न करेगा।


उपयोग केस 1 में, हमारे पास एक थ्रेडग्रुप तत्व है जो 100 थ्रेड्स के साथ कॉन्फ़िगर किया गया है, और इसका रैंप-अप समय 0 है।


इसमें "थ्रेड्स की संख्या" फ़ील्ड 100 के रूप में सेट होगी। इसका मतलब है कि 100 उपयोगकर्ता एक बार में अनुरोध भेजेंगे। इसी तरह, हम शेष 4 थ्रेड्स को भी कॉन्फ़िगर कर सकते हैं और उनका रैंप-अप समय 15, 25, 35 और 45 के रूप में सेट कर सकते हैं। साथ ही, प्रत्येक थ्रेड समूह के लिए सैंपलर्स को नाम दें।


जैसा कि पहले उल्लेख किया गया है, ये HTTP नमूने नमूना वेबसाइट के मुख पृष्ठ की ओर इंगित करेंगे।


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

2. परीक्षण परिणामों का विश्लेषण

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


जोड़ें → श्रोता → समग्र रिपोर्ट


फिर परीक्षण चलाने के लिए स्टार्ट आइकन पर क्लिक करें।


अब, आइए देखें कि समग्र रिपोर्ट से थ्रूपुट के परिणामों को कैसे समझा जाए।


रैंप-अप टाइम 0 वाला पहला थ्रेड समूह दिखाता है कि सभी थ्रेड एक साथ शुरू करके सर्वर पर तत्काल लोड डालते हैं। इस परिदृश्य में थ्रूपुट काफी अधिक है, लेकिन यह व्यावहारिक नहीं है। इसलिए, यह यथार्थवादी आउटपुट नहीं दिखाएगा।


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


थ्रेड समूह चार और पांच में रैंप-अप समय अधिक है, जिसका अर्थ है कि उनका थ्रूपुट कम हो जाएगा।


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

थ्रूपुट का परीक्षण करते समय याद रखने योग्य महत्वपूर्ण बातें:

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


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


इसलिए, ऐसे तरीकों का उपयोग करके, हम यह उचित विचार नहीं प्राप्त कर सकते हैं कि हमारा एप्लिकेशन वास्तविक लोड को संभालने जा रहा है या नहीं। इसलिए, उपयुक्त परीक्षण स्थापित करना महत्वपूर्ण है।

अब, हम कुछ महत्वपूर्ण बिंदुओं पर चर्चा करेंगे जिन पर हमें प्रदर्शन थ्रूपुट के परीक्षण के लिए विचार करने की आवश्यकता है।

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


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


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


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

निष्कर्ष

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


निर्धारित प्रदर्शन परीक्षण लक्ष्यों को प्राप्त करने के लिए यथार्थवादी थ्रूपुट बनाना भी वास्तव में महत्वपूर्ण है।