यूज़र इंटरफ़ेस (यूआई) की जांच को ऑटोमेट करना

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

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

यूज़र इंटरफ़ेस की जांच करने वाले टूल, किसी ऐप्लिकेशन (या उसके किसी हिस्से) को लॉन्च करते हैं. इसके बाद, वे उपयोगकर्ता के इंटरैक्शन को सिम्युलेट करते हैं और आखिर में यह जांच करते हैं कि ऐप्लिकेशन ने सही तरीके से काम किया है या नहीं. ये इंटिग्रेशन टेस्ट होते हैं, जिनमें छोटे कॉम्पोनेंट के व्यवहार की पुष्टि करने से लेकर, पूरे यूज़र फ़्लो को ट्रैवर्स करने वाले बड़े नेविगेशन टेस्ट तक शामिल हो सकते हैं. ये रेग्रेशन की जांच करने और अलग-अलग एपीआई लेवल और फ़िज़िकल डिवाइसों के साथ काम करने की पुष्टि करने के लिए काम के होते हैं.

यूज़र इंटरफ़ेस (यूआई) की जांच करना

  • Android Studio का इस्तेमाल करके, इंस्ट्रूमेंट किए गए यूज़र इंटरफ़ेस (यूआई) टेस्ट चलाने के लिए, आपको अपने टेस्ट कोड को एक अलग Android टेस्ट फ़ोल्डर - src/androidTest/java में लागू करना होगा. Android Gradle प्लग इन, आपके टेस्ट कोड के आधार पर एक टेस्ट ऐप्लिकेशन बनाता है. इसके बाद, वह टेस्ट ऐप्लिकेशन को टारगेट ऐप्लिकेशन वाले डिवाइस पर लोड करता है. अपने टेस्ट कोड में, टारगेट ऐप्लिकेशन पर उपयोगकर्ता इंटरैक्शन को सिम्युलेट करने के लिए, यूज़र इंटरफ़ेस (यूआई) टेस्टिंग फ़्रेमवर्क का इस्तेमाल किया जा सकता है. इससे, खास इस्तेमाल के उदाहरणों को कवर करने वाले टेस्टिंग टास्क पूरे किए जा सकते हैं.
  • जेवीएम पर यूज़र इंटरफ़ेस (यूआई) टेस्ट चलाने के लिए, Robolectric का भी इस्तेमाल किया जा सकता है.

आर्किटेक्चर और टेस्ट सेटअप

आपके ऐप्लिकेशन के आर्किटेक्चर में, डुप्लीकेट टेस्टिंग के लिए, टेस्ट के कुछ हिस्सों को बदलने की सुविधा होनी चाहिए. साथ ही, आपको ऐसी लाइब्रेरी का इस्तेमाल करना चाहिए जो टेस्टिंग में मदद करने वाली सुविधाएं उपलब्ध कराती हों. उदाहरण के लिए, डेटा रिपॉज़िटरी मॉड्यूल को उसके इन-मेमोरी वर्शन से बदला जा सकता है. यह वर्शन, टेस्ट के लिए नकली और तय डेटा उपलब्ध कराता है.

प्रोडक्शन और टेस्टिंग आर्किटेक्चर के डायग्राम. प्रोडक्शन डायग्राम में, लोकल और रिमोट डेटा सोर्स दिखाए गए हैं. ये डेटा सोर्स, डेटा को रिपॉज़िटरी को उपलब्ध कराते हैं. इसके बाद, रिपॉज़िटरी, डेटा को यूज़र इंटरफ़ेस (यूआई) को असिंक्रोनस तरीके से उपलब्ध कराती है. टेस्टिंग डायग्राम में एक फ़ेक रिपॉज़िटरी दिखाई गई है, जो यूज़र इंटरफ़ेस (यूआई) को सिंक करके अपना डेटा उपलब्ध कराती है.
तीसरी इमेज: यूज़र इंटरफ़ेस (यूआई) की डिपेंडेंसी को फ़ेक डिपेंडेंसी से बदलकर, यूआई की जांच करना.

डिपेंडेंसी को बदलने के लिए, डिपेंडेंसी इंजेक्शन का सुझाव दिया जाता है. आपके पास मैन्युअल तरीके से अपना सिस्टम बनाने का विकल्प है. हालांकि, हमारा सुझाव है कि आप इसके लिए, Hilt जैसे डीआई फ़्रेमवर्क का इस्तेमाल करें.

यूज़र इंटरफ़ेस (यूआई) की अपने-आप जांच क्यों की जाती है?

Android ऐप्लिकेशन, कई एपीआई लेवल और डिवाइस के नाप या आकार के हिसाब से, हज़ारों अलग-अलग डिवाइसों को टारगेट कर सकता है. साथ ही, ओएस में उपयोगकर्ता को ज़्यादा कस्टमाइज़ेशन की सुविधा मिलती है. इसका मतलब है कि आपका ऐप्लिकेशन गलत तरीके से रेंडर हो सकता है या कुछ डिवाइसों पर क्रैश भी हो सकता है.

यूज़र इंटरफ़ेस (यूआई) टेस्टिंग की मदद से, ऐप्लिकेशन के साथ काम करने की जांच की जा सकती है. इससे, अलग-अलग संदर्भों में ऐप्लिकेशन के व्यवहार की पुष्टि की जा सकती है. हो सकता है कि आपको अपने यूज़र इंटरफ़ेस (यूआई) टेस्ट, इन तरह के डिवाइसों पर चलाने हों:

  • एपीआई लेवल: 21, 25, और 30.
  • देश/इलाके के हिसाब से भाषा: अंग्रेज़ी, ऐरेबिक, और चाइनीज़.
  • ओरिएंटेशन: पोर्ट्रेट, लैंडस्केप.

इसके अलावा, ऐप्लिकेशन को फ़ोन के अलावा अन्य डिवाइसों पर भी उपयोगकर्ता के व्यवहार की जांच करनी चाहिए. आपको टैबलेट, फ़ोल्ड किए जा सकने वाले डिवाइसों, और अन्य डिवाइसों पर जांच करनी चाहिए. अलग-अलग स्क्रीन साइज़ की जांच करने के बारे में ज़्यादा जानें.

यूज़र इंटरफ़ेस (यूआई) टेस्ट के टाइप

इस सेक्शन में, यूज़र इंटरफ़ेस (यूआई) के दो तरह के टेस्ट शामिल हैं:

  • परफ़ॉर्मेंस की जांच, यूज़र इंटरफ़ेस (यूआई) एलिमेंट की प्रॉपर्टी के बारे में बताने के लिए, यूआई के लेआउट का विश्लेषण करती है.
  • स्क्रीनशॉट की जांच में, यूज़र इंटरफ़ेस (यूआई) के स्क्रीनशॉट लिए जाते हैं और उनकी तुलना, पहले से मंज़ूरी पा चुकी इमेज से की जाती है.