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

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

इस पेज पर, हर टेस्ट को पूरा करने में लगने वाला समय देखा जा सकता है. आपके पास अपने टेस्ट 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 कमांड-लाइन विकल्प का इस्तेमाल किया जा सकता है.