स्क्रीन और विंडो के अलग-अलग साइज़ आज़माएं

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

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

क्या टेस्ट करें

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

  1. कॉम्पोनेंट और लेआउट के विज़ुअल एट्रिब्यूट अलग-अलग कैसे होते हैं अलग-अलग साइज़ की विंडो पर
  2. कॉन्फ़िगरेशन के बदलावों में स्टेटस को कैसे सेव रखा जाता है

विज़ुअल एट्रिब्यूट

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

पहली इमेज. "आपके लिए" अब Android में अलग-अलग विंडो साइज़ में स्क्रीन

साथ ही, हो सकता है कि आपका ऐप्लिकेशन आपके डिज़ाइन सिस्टम में कुछ कॉम्पोनेंट को इस तरह रेंडर न करे उम्मीद की जाती है कि जब उनके साइज़ की सीमा बढ़ जाए.

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

राज्य बहाली

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

दूसरी इमेज. फ़ोल्ड किया जा सकने वाला डिवाइस फ़ोल्ड किया गया, सपाट खुला हुआ, सपाट फ़ोन को लैंडस्केप मोड में घुमाया गया, और आधा खुला हुआ (टेबलटॉप).

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

कॉन्फ़िगरेशन में हुए बदलावों की जांच करने के कई तरीके हैं. हालांकि, ज़्यादातर मामलों में, इसकी जांच दो तरीकों से की जा सकती है:

  • कंपोज़ में, कॉन्फ़िगरेशन को सिम्युलेट करने के लिए StateRestorationTester का इस्तेमाल करें गतिविधि को रीस्टार्ट किए बिना बेहतर तरीके से बदलाव किया जा सकता है. नीचे दी गई जानकारी देखें सेक्शन देखें.
  • Espresso या Compose जैसे किसी भी यूज़र इंटरफ़ेस (यूआई) की जांच में, कॉन्फ़िगरेशन में बदलाव को सिम्युलेट करें Activity.recreate() पर कॉल किया जा रहा है.

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

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

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

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

अलग-अलग स्क्रीन और विंडो साइज़ के लिए, टेस्ट के टाइप

इस्तेमाल के हर उदाहरण के लिए, सही टेस्ट का इस्तेमाल करें, ताकि यह पुष्टि हो सके कि जांच सही तरीके से काम कर रही है ये सही तरीके़ से अलग-अलग नाप या आकार में उपलब्ध हैं.

  • यूज़र इंटरफ़ेस (यूआई) के व्यवहार की जांच से ऐप्लिकेशन के यूज़र इंटरफ़ेस (यूआई) का कुछ हिस्सा लॉन्च किया जाता है, जैसे कि डिसप्ले कोई गतिविधि हुई है. टेस्ट से यह पुष्टि होती है कि कुछ एलिमेंट मौजूद हैं या कुछ खास हैं एट्रिब्यूट की वैल्यू के तौर पर . जांच के दौरान, हो सकता है कि यह उपयोगकर्ता की नकली कार्रवाइयां कर सके. हालांकि, ऐसा करना ज़रूरी नहीं है. इसके लिए व्यू बढ़ाने के लिए, Espresso का इस्तेमाल करें. Jetpack Compose में अपना अलग तरीका है टेस्टिंग एपीआई. यूज़र इंटरफ़ेस (यूआई) के व्यवहार की जांच, इंस्ट्रुमेंट या लोकल हो सकती हैं. इंस्ट्रुमेंट वाले टेस्ट, डिवाइसों या एम्युलेटर पर चलते हैं, जबकि लोकल यूज़र इंटरफ़ेस (यूआई) वाले टेस्ट JVM पर Robolectric.

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

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

आखिर में, यूनिट की जांच करने के लिए आपको यूनिट टेस्ट की ज़रूरत पड़ सकती है एक लॉजिक जो डिवाइस या विंडो के साइज़ के आधार पर अलग-अलग काम करता है. लेकिन इस क्षेत्र में यूनिट टेस्ट कम इस्तेमाल किए जाते हैं.

अगले चरण

इसमें शामिल जांच को लागू करने के तरीके के बारे में ज़्यादा जानकारी पाने के लिए दस्तावेज़ के लिए, लाइब्रेरी और टूल देखें.