मोबाइल ऐप प्रदर्शन परीक्षण

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

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

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

डिवाइस, सर्वर और नेटवर्क लेयर्स में मोबाइल ऐप के प्रदर्शन का परीक्षण

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

आपके मोबाइल एप्लिकेशन को अंतिम उपयोगकर्ता के लिए जारी करने से पहले उसका पूरी तरह से परीक्षण किया जाना चाहिए।

मोबाइल एप्लिकेशन परीक्षण रणनीति

मोबाइल फोन या किसी भी स्मार्ट डिवाइस पर एप्लिकेशन प्रदर्शन को आमतौर पर निम्नलिखित तीन श्रेणियों में मापा जाता है।

  • डिवाइस प्रदर्शन
  • सर्वर/API प्रदर्शन
  • नेटवर्क प्रदर्शन

नीचे दिया गया आरेख उन तीनों परतों को उनकी जाँचों से जोड़ता है।

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

डिवाइस प्रदर्शन

जब ग्राहक को धीमी ऐप का अनुभव होता है, तो वे परेशान हो जाते हैं।

डिवाइस के प्रदर्शन की जाँच के लिए, आपको निम्नलिखित बातों की जाँच करनी होगी:

  • ऐप स्टार्टअप: आपका ऐप शुरू होने में कितना समय लेता है? यह उपयोगकर्ता द्वारा निर्धारित पहला प्रदर्शन पैरामीटर है। एक सामान्य नियम के रूप में, उपयोगकर्ता द्वारा ऐप आइकन पर टैप करने के बाद पहली स्क्रीन 1-2 सेकंड में दिखाई जानी चाहिए।
  • किसी ऐप का उपयोग करते समय बैटरी का समय: लगातार इस्तेमाल करने पर, कुछ मोबाइल ऐप्स बैटरी की खपत बहुत ज़्यादा करते हैं और फ़ोन को गर्म कर देते हैं। ऐसा आमतौर पर तब होता है जब आपका ऐप ज़रूरत से ज़्यादा संसाधनों का इस्तेमाल करता है, जिससे प्रोसेसर पर बोझ पड़ता है।
  • मेमोरी खपत: . परीक्षण ऐप में मेमोरी खपत की जांच की जानी चाहिए। ऐप में कुछ खास कार्यक्षमताओं को लागू करने से मेमोरी खपत भी बढ़ जाती है। उदाहरण के लिए, Android जब ऐप्स में पुश नोटिफिकेशन लागू किए जाते हैं तो मेमोरी की खपत बढ़ जाती है।

    कुछ मामलों में, यह देखा गया है कि पूरे ओएस द्वारा मेमोरी का उपयोग मात्र 14% है, लेकिन एक नया ऐप 11% खपत कर रहा है। इसलिए, ऐप को वास्तविक दुनिया में तैनात करने या क्लाइंट को देने से पहले इन कारकों को संभालना चाहिए।

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

सर्वर/API प्रदर्शन

जब ऐप API के माध्यम से सर्वर के साथ इंटरैक्ट करता है, तो प्रतिक्रिया समय प्रदर्शन के लिए महत्वपूर्ण हो जाता है। सर्वर के प्रदर्शन के लिए, आपको निम्नलिखित की जाँच करनी होगी:

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

नेटवर्क प्रदर्शन

विभिन्न नेटवर्कों और नेटवर्क गुणों पर ऐप के प्रदर्शन को मापा जाना आवश्यक है।

नेटवर्क प्रदर्शन के लिए, आप निम्नलिखित चीजों की जांच करेंगे।

  • घबराहट: जब नेटवर्क पर सूचना प्राप्त करने में देरी होती है, तो इसे जिटर्स कहा जाता है। यह कनेक्शन रहित नेटवर्क या पैकेट स्विच नेटवर्क की समस्या है। चूंकि सूचना पैकेट में वितरित की जाती है, इसलिए पैकेट प्रेषक से रिसीवर तक एक अलग रास्ते से यात्रा कर सकते हैं। जब डेटा इच्छित स्थान पर पहुंचता है, तो यह मूल रूप से भेजे जाने की तुलना में अस्त-व्यस्त हो जाता है। जिटर्स के मामले में, मोबाइल ऐप को इसे संभालने में सक्षम होना चाहिए।

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

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

    उदाहरण के लिए, फ़ोन नेटवर्क को 4G से वाई-फ़ाई और इसके विपरीत स्विच करते समय उपयोगकर्ताओं को किसी ऐप में समस्या आ सकती है। इस स्थिति में, ऐप काम करना बंद कर देता है और उसे दोबारा चालू करने की आवश्यकता हो सकती है।

मोबाइल एप्लिकेशन प्रदर्शन समस्या निवारण

मुद्दों/समस्याओं का पता चलने के बाद प्रदर्शन का परीक्षणअब समय आ गया है tracत्रुटियों को दूर करें और सुधारें।

समस्या 1) मोबाइल ऐप की धीमी प्रतिक्रिया।

इस विलंब का कारण RAM, कैश आदि हो सकता है।

आपको अनावश्यक प्रक्रियाओं को समाप्त करने या कैश साफ़ करने की आवश्यकता है। कनेक्टिविटी समस्या का निवारण करने से कुछ ऐसी समस्याओं का समाधान हो सकता है जो देरी पैदा कर रही हैं

समस्या 2) ऐप पुनः प्रारंभ होना, लॉक हो जाना, रुक जाना या अनुत्तरदायी होना।

इसे निम्नलिखित कुछ चरणों द्वारा ठीक किया जा सकता है

  • अनुप्रयोग कोड का अनुकूलन
  • सॉफ्टवेयर को पैच और अपडेट किया जाना चाहिए।
  • स्वचालित पुनर्स्थापना
  • बाह्य कार्ड का उपयोग करते समय RAM या कुछ मामलों में ROM का प्रबंधन करना
  • Wiping कैश विभाजन
  • अन्य तृतीय-पक्ष ऐप्स और API के साथ ऐप के काम करने की पुष्टि करना
  • नक्शाping डिवाइस के अनुसार मोबाइल एप्लिकेशन

उपयोगी मोबाइल ऐप परीक्षण उपकरण

मोबाइल ऐप परीक्षण उपकरण डिवाइस या मोबाइल ओएस के अनुसार अलग-अलग होते हैं। कुछ सामान्य मोबाइल ऐप प्रदर्शन परीक्षण उपकरण हैं

एंड्रॉयड

  • Robotium यह वैसे ही है Selenium मोबाइल ऐप्स के लिए। परीक्षक परीक्षण करने के लिए आवश्यक कई चरणों को रिकॉर्ड और चला सकता है।
  • बंदर धावक MonkeyRunner पीसी या एमुलेटर से जुड़े वास्तविक डिवाइस पर परीक्षण चला सकता है। इस टूल में एक API है, जो स्मार्टफोन, टैबलेट या एमुलेटर को बाहर से नियंत्रित करने की अनुमति देता है Android कोड।

⚠️ संस्करण नोट: दोनों Android प्रविष्टियाँ पुरानी हैं। Robotium 2016 के बाद से इसका कोई नया संस्करण जारी नहीं हुआ है, और Google ने MonkeyRunner को अनुपयोगी घोषित कर दिया है, जिससे टीमों को UI Automator और इसके अन्य विकल्पों की ओर निर्देशित किया जा रहा है। uiautomatorviewer निरीक्षक की जगह।

सेब

  • ऑटोमेटर (मैक) ऑटोमेटर एक ऐसा एप्लिकेशन है जिसे एप्पल ने विकसित किया है। macOSयह दोहराए जाने वाले कार्यों को बैचों में स्वचालित करने के लिए पॉइंट-एंड-क्लिक (या ड्रैग एंड ड्रॉप) वर्कफ़्लो निर्माण को लागू करता है, जिससे उनमें तेजी से बदलाव किया जा सकता है। इससे प्रत्येक फ़ाइल को अलग-अलग मैन्युअल रूप से बदलने के लिए मानवीय हस्तक्षेप की तुलना में समय और प्रयास की बचत होती है।

चुनौतियां

प्रदर्शन परीक्षण के दौरान सामने आने वाली प्रमुख चुनौतियों में शामिल हैं

  • विभिन्न मोबाइल प्लेटफॉर्म और उनके ऑपरेटिंग सिस्टम को व्यवस्थित करना
  • 3G, 4G, 5G या वाई-फाई आदि जैसी कनेक्टिविटी का अनुकरण करना।
  • मोबाइल डिवाइस की बैटरी और संसाधन खपत जैसी बाधाएँ
  • मोबाइल फोन प्रयोज्यता
  • एक ही ऐप चलाने के लिए विभिन्न आकार के मोबाइल डिवाइस

मोबाइल ऐप प्रदर्शन परीक्षण वातावरण सेट अप करें

परीक्षण वातावरण को कॉन्फ़िगर करने के लिए, आपको निम्न करना होगा-

  • उस मोबाइल ऐप की समझ जिसका परीक्षण किया जाना आवश्यक है
  • विभिन्न ऑपरेटिंग सिस्टम की पहचान करना जिन पर ऐप को चलाना आवश्यक है
  • परीक्षण सेटअप का निर्माण
  • एमुलेटर या सिमुलेटर बनाएं
  • प्रोटोटाइपping वास्तविक सेटअप का
  • परीक्षण के लिए उपयुक्त उपकरण का चयन

मोबाइल ऐप प्रदर्शन परीक्षण चेकलिस्ट

मोबाइल ऐप्स के प्रदर्शन का परीक्षण रिलीज़ से पहले एक महत्वपूर्ण उपाय है। प्रदर्शन परीक्षण यह जाँचने के लिए किया जाता है कि क्या वे किसी ऐप के प्रदर्शन को बेहतर बना सकते हैं।

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

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

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

ANR एक एप्लीकेशन नॉट रिस्पॉन्डिंग इवेंट है, जो तब उत्पन्न होता है जब Android मुख्य थ्रेड ब्लॉक हो जाता है। क्रैश-मुक्त दर उन सत्रों का प्रतिशत है जो बिना क्रैश हुए समाप्त होते हैं। Google Play उन ऐप्स को कम प्राथमिकता देता है जो इनमें से किसी भी सीमा से अधिक होने पर अपने प्रकाशित मानदंडों को पार कर जाते हैं।

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

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

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

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

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

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

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