अपने Android ऐप्लिकेशन पर टेस्ट चलाने के लिए, Firebase Test Lab का इस्तेमाल कई तरीकों से किया जा सकता है. इनमें कमांड लाइन इंटरफ़ेस, Android Studio, Firebase कंसोल में Test Lab यूज़र इंटरफ़ेस (यूआई), और Testing API शामिल हैं. टेस्ट शुरू करने के लिए, चाहे जो भी तरीका चुना जाए, नतीजे आपके चुने गए Firebase प्रोजेक्ट में सेव किए जाते हैं. ऊपर दिए गए किसी भी टूल के अलावा, ToolResults API का इस्तेमाल करके भी नतीजे देखे जा सकते हैं. इस पेज पर, टेस्ट के नतीजों की समीक्षा और विश्लेषण करने का तरीका बताया गया है.
मुख्य सिद्धांत
Firebase कंसोल में, DevOps और यूज़र ऐक्टिविटी > Test Lab पर जाकर, टेस्ट के पिछले सभी नतीजों को देखा जा सकता है. इस पेज पर, उन ऐप्लिकेशन के टेस्ट रन के सभी नतीजे दिखते हैं जिन्हें आपने Test Lab का इस्तेमाल करके, अपने प्रोजेक्ट के साथ टेस्ट किया है.
टेस्ट के नतीजों की समीक्षा करने के लिए, आपको पहले तीन कॉन्सेप्ट समझने होंगे:
जब चुने गए डिवाइसों और कॉन्फ़िगरेशन के लिए, कोई टेस्ट या टेस्ट केस का सेट चलाया जाता है, तो Test Lab आपके ऐप्लिकेशन के लिए टेस्ट को बैच में चलाता है. इसके बाद, नतीजों को जांच के मैट्रिक्स के तौर पर दिखाता है.
डिवाइस × जांच करना = जांच का मैट्रिक्स
- डिवाइस
- कोई फ़िज़िकल या वर्चुअल डिवाइस (सिर्फ़ Android) जिस पर टेस्ट चलाया जाता है. जैसे, फ़ोन, टैबलेट या पहने जाने वाला डिवाइस. जांच के मैट्रिक्स में मौजूद डिवाइसों की पहचान, डिवाइस के मॉडल, ओएस वर्शन, स्क्रीन ओरिएंटेशन, और स्थान-भाषा (इसे भौगोलिक और भाषा की सेटिंग भी कहा जाता है) से की जाती है.
- जांच, जांच करना
- किसी डिवाइस पर चलाया जाने वाला टेस्ट (या टेस्ट केस का सेट). हर डिवाइस पर एक टेस्ट चलाया जा सकता है. इसके अलावा, टेस्ट को अलग-अलग हिस्सों में बांटकर, उसके टेस्ट केस को अलग-अलग डिवाइसों पर चलाया जा सकता है.
- जांच का मैट्रिक्स
- इसमें, टेस्ट एक्ज़ीक्यूशन की स्थितियां और टेस्ट के नतीजे शामिल होते हैं. अगर किसी मैट्रिक्स में कोई भी टेस्ट एक्ज़ीक्यूशन फ़ेल हो जाता है, तो पूरा मैट्रिक्स फ़ेल हो जाता है.
यहां दिए गए सेक्शन में, टेस्ट के नतीजों को देखने का तरीका बताया गया है.
टेस्ट के इतिहास के नतीजों को समझना
Test Lab को चुनकर, टेस्ट के नतीजों पर जाने पर, आपको अब तक किए गए टेस्ट के नतीजे दिखते हैं.
जांच के इतिहास को ऐप्लिकेशन के हिसाब से ग्रुप किया जाता है. हर ऐप्लिकेशन के लिए, जांच के सिर्फ़ पांच सबसे नए मैट्रिक्स दिखाए जाते हैं. अगर इससे ज़्यादा मैट्रिक्स उपलब्ध हैं, तो उस ऐप्लिकेशन की पूरी सूची देखने के लिए, ऐप्लिकेशन की जांच की सूची में सबसे नीचे मौजूद, सभी मैट्रिक्स लिंक पर क्लिक करें.
जांच के मैट्रिक्स के नतीजों को समझना
Test Lab यूज़र इंटरफ़ेस (यूआई) से टेस्ट शुरू करने पर, आपको एक पेज पर रीडायरेक्ट किया जाता है. यहां आपको टेस्ट मैट्रिक्स दिखता है. साथ ही, टेस्ट के नतीजे देखने के लिए, किसी टेस्ट को चलाने पर क्लिक किया जा सकता है. Android Studio और gcloud कमांड, जांच के मैट्रिक्स के नतीजों वाले पेज का यूआरएल भी उपलब्ध कराते हैं.
जांच के सामान्य मैट्रिक्स में, एक दर्जन या उससे ज़्यादा अलग-अलग डिवाइसों पर जांच की जा सकती है. हर टेस्ट का नतीजा अलग हो सकता है. जांच के मैट्रिक्स में, जांच करने के संभावित नतीजों में ये शामिल हैं:
पास: कोई गड़बड़ी नहीं मिली.- Failed
: कम से कम एक गड़बड़ी हुई. - नतीजा नहीं निकला
: टेस्ट के नतीजे नहीं निकले. ऐसा शायद Test Lab गड़बड़ी की वजह से हुआ.
को स्किप किया गया: मैट्रिक्स में कुछ टेस्ट एक्ज़ीक्यूशन के लिए चुनी गई डाइमेंशन वैल्यू, काम नहीं कर रही थीं. ऐसा तब होता है, जब चुने गए डिवाइस, आपके चुने गए एक या उससे ज़्यादा Android एपीआई लेवल के साथ काम न करते हों.
अपने Firebase प्रोजेक्ट में किसी ऐप्लिकेशन के लिए, जांच के सभी मैट्रिक्स के एग्रीगेट किए गए नतीजे देखने के लिए, ऐप्लिकेशन के नाम पर क्लिक करें. इसके बारे में यहां दिए गए उदाहरण में बताया गया है:
जांच के मैट्रिक्स के नतीजों वाले पेज का उदाहरण, जिसमें सिर्फ़ चार जांचें शामिल हैं

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

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

एक बार की गई जांच के नतीजों को समझना
जांच के मैट्रिक्स के नतीजों वाले पेज पर, किसी एक जांच पर क्लिक करके उसके नतीजे देखें.
जांच के नतीजों वाले पेज का उदाहरण

इस पेज पर, हर टेस्ट को पूरा करने में लगने वाला समय देखा जा सकता है. आपके पास अपने टेस्ट APK (इंस्ट्रुमेंटेशन टेस्ट के लिए) में मौजूद तरीकों से जुड़े खास टेस्ट केस के नतीजे देखने का विकल्प भी है. साथ ही, टेस्ट के नतीजों की पूरी जानकारी देखी जा सकती है. इसमें टेस्ट लॉग, स्क्रीनशॉट, और वीडियो शामिल हैं. रोबो टेस्ट के लिए, टेस्ट के नतीजों की ज़्यादा जानकारी में एक गतिविधि मैप भी शामिल होता है. यह मैप, ग्राफ़िक के तौर पर उन यूज़र इंटरफ़ेस (यूआई) पाथ को दिखाता है जिन पर रोबो टेस्ट किया गया था.
इंस्ट्रुमेंटेशन टेस्ट के नतीजे, जिन्हें अलग-अलग हिस्सों में बांटा गया है
इंस्ट्रुमेंटेड टेस्ट के नतीजों को समझने में आपकी मदद करने के लिए, Test Lab हर टेस्ट को ज़्यादा जानकारी वाले रिपोर्ट पेज में अलग-अलग दिखाता है. इसमें स्टैक ट्रेस, लॉग, और वीडियो शामिल होते हैं. यह सुविधा तब भी काम करती है, जब Android Orchestrator का इस्तेमाल न किया जा रहा हो.
टेस्टकेस के नतीजों के पेज का उदाहरण

सुलभता से जुड़े नतीजों को समझना
रोबो टेस्ट, आपके ऐप्लिकेशन में सुलभता से जुड़ी समस्याओं का पता लगाने के लिए, Android Accessibility Scanner का इस्तेमाल करते हैं. ध्यान दें कि अपने डिवाइस पर भी स्कैन किया जा सकता है. रोबो टेस्ट के सुलभता नतीजों को देखने और समझने के तरीके के बारे में जानने के लिए, Accessibility Scanner का इस्तेमाल शुरू करना पर जाएं.
अपने ऐप्लिकेशन की सुलभता को बेहतर बनाने के तरीके के बारे में सामान्य जानकारी पाने के लिए, Android डेवलपर के लिए सुलभता दस्तावेज़ पर जाएं.
परफ़ॉर्मेंस मेट्रिक
फ़िज़िकल डिवाइसों पर किए गए टेस्ट से, परफ़ॉर्मेंस मेट्रिक भी मिलती हैं:
| मेट्रिक | डिवाइस का ज़रूरी कॉन्फ़िगरेशन |
|---|---|
| ऐप्लिकेशन स्टार्टअप समय | एपीआई 19+ |
| CPU उपयोग | एपीआई 21+ |
| मेमोरी का इस्तेमाल | |
| नेटवर्क पर की जाने वाली गतिविधि | |
| फ़्रेम प्रति सेकंड | एपीआई 21+ और इसमें SurfaceView शामिल है |
जांच के नतीजों की पूरी जानकारी
टेस्ट के नतीजों की पूरी जानकारी, टेस्ट चलाने के बाद 90 दिनों तक उपलब्ध रहती है. साथ ही, इसे Google Cloud Storage बकेट में सेव किया जाता है. हालांकि, यह Firebase कंसोल में भी दिखती है. जांच के नतीजों वाले पेज पर जांच के नतीजे पर क्लिक करके, Cloud Storage बकेट में जांच के नतीजों की ज़्यादा जानकारी देखी जा सकती है. जब टेस्ट के नतीजों की पूरी जानकारी उपलब्ध नहीं होती, तब भी यह देखा जा सकता है कि कौनसे टेस्ट पास हुए या फ़ेल हुए.
अगर आपको टेस्ट के नतीजों की पूरी जानकारी 90 दिनों से ज़्यादा समय तक सेव रखनी है, तो इन नतीजों को अपने मालिकाना हक वाली Cloud Storage बकेट में भेजा जा सकता है. इसके लिए, --results-bucket gcloud कमांड-लाइन विकल्प का इस्तेमाल करें. इसके बाद, उम्र सेटिंग को सेट करके यह तय किया जा सकता है कि नतीजे, आपकी Cloud Storage बकेट में कितने समय तक सेव रहेंगे. उम्र की सेटिंग बदलने के बारे में जानने के लिए, लाइफ़साइकल की शर्तें देखें.
टेस्ट चलाते समय, अगर आपको does not have storage.objects.create access to the Google Cloud Storage object. Permission 'storage.objects.create' denied on resource (or it may not exist).. गड़बड़ी मिलती है, तो हो सकता है कि टेस्ट चलाने वाले प्रिंसिपल के पास प्रोजेक्ट के लिए सही अनुमति न हो. डिफ़ॉल्ट रूप से, Firebase आपके लिए Google Cloud Storage में एक बकेट बनाता है. हालांकि, टेस्ट को लागू करने वाले प्रिंसिपल के पास "roles/editor" होना चाहिए. यह एक ऐसी भूमिका है जिसमें अनुमति देने का अधिकार होता है. अगर आपके पास प्रिंसिपल को यह भूमिका देने की अनुमति नहीं है, तो --results-bucket gcloud कमांड-लाइन विकल्प का इस्तेमाल करें.