टेस्ट लैब की समस्या का हल & अक्सर पूछे जाने वाले सवाल
इस पेज पर, समस्या हल करने में मदद मिलती है. साथ ही, Firebase Test Lab की मदद से टेस्ट चलाने के बारे में अक्सर पूछे जाने वाले सवालों के जवाब भी मिलते हैं. आम तौर पर होने वाली समस्याओं का
दस्तावेज़ भी तैयार किया गया है. अगर आपको अपनी ज़रूरत के मुताबिक जानकारी नहीं मिल पा रही है या आपको और मदद चाहिए, तो Firebase Slack पर #test-lab channel में शामिल हों या Firebase की सहायता टीम से संपर्क करें.
समस्या का हल
मेरे टेस्ट को पूरा होने में इतना समय क्यों लग रहा है?
Test Lab कैटलॉग में, ज़्यादा क्षमता के लेवल वाला कोई डिवाइस चुनने पर, जांच तेज़ी से शुरू हो सकती हैं. जब किसी डिवाइस की क्षमता कम होती है, तो जांच में ज़्यादा समय लग सकता है. अगर शुरू की गई जांचों की संख्या, चुने गए डिवाइसों की क्षमता से काफ़ी ज़्यादा है, तो जांचों को पूरा होने में ज़्यादा समय लग सकता है.
डिवाइस की क्षमता के किसी भी लेवल पर चल रहे टेस्ट में, इन वजहों से ज़्यादा समय लग सकता है:
ट्रैफ़िक, जिससे डिवाइस की उपलब्धता और जांच की स्पीड पर असर पड़ता है.
डिवाइस या इन्फ़्रास्ट्रक्चर में होने वाली गड़बड़ियां, जो कभी भी हो सकती हैं. Test Lab के लिए, कोई इन्फ़्रास्ट्रक्चर रिपोर्ट किया गया है या नहीं, यह देखने के लिए Firebase का स्टेटस डैशबोर्ड देखें.
Test Lab में डिवाइस की कपैसिटी के बारे में ज़्यादा जानने के लिए, Android और iOS डिवाइस की कपैसिटी से जुड़ी जानकारी देखें.
मुझे जांच के अधूरे नतीजे क्यों मिल रहे हैं?
जांच के नतीजे साफ़ तौर पर न मिलने की वजह, आम तौर पर जांच की प्रोसेस रद्द होने या इन्फ़्रास्ट्रक्चर से जुड़ी गड़बड़ियों की वजह से होती है.
इन्फ़्रास्ट्रक्चर से जुड़ी गड़बड़ियां, Test Lab से जुड़ी अंदरूनी समस्याओं की वजह से होती हैं. जैसे, नेटवर्क से जुड़ी गड़बड़ियां या डिवाइस के गलत तरीके से काम करना. Test Lab, अंदरूनी तौर पर टेस्ट रिटायर करता है. इसमें कोई ठोस नतीजा न मिलने से पहले, कई बार इन्फ़्रास्ट्रक्चर की गड़बड़ियां दिखती हैं. हालांकि, failFast का इस्तेमाल करके इस प्रोसेस को बंद किया जा सकता है.
Test Lab में यह जांच फिर से करके देखें कि यह दोबारा जनरेट किया जा सकता है.
अगर लागू हो, तो किसी दूसरे डिवाइस या डिवाइस टाइप पर टेस्ट करें.
अगर समस्या बनी रहती है, तो Firebase Slack पर #test-lab चैनल में जाकर, Test Lab टीम से संपर्क करें.
शार्डिंग से मेरे परीक्षण
लंबे समय तक क्यों चले?
अगर आपने Test Lab में इस्तेमाल के लिए उपलब्ध डिवाइसों की संख्या से ज़्यादा शर्ड तय किए हैं, तो शर्ड करने की वजह से आपके टेस्ट ज़्यादा समय तक चल सकते हैं. इस स्थिति से बचने के लिए, किसी दूसरे डिवाइस का इस्तेमाल करें. किसी दूसरे डिवाइस को चुनने के बारे में ज़्यादा जानने के लिए,
डिवाइस की कपैसिटी.
मेरा टेस्ट शुरू होने में
ज़्यादा समय क्यों लग रहा है?
टेस्ट का अनुरोध सबमिट करने पर, आपके ऐप्लिकेशन की पुष्टि की जाती है, फिर उस पर फिर से हस्ताक्षर किए जाते हैं. ऐसा, डिवाइस पर टेस्ट चलाने की तैयारी के लिए किया जाता है. आम तौर पर, यह प्रोसेस कुछ सेकंड में पूरी हो जाती है. हालांकि, आपके ऐप्लिकेशन के साइज़ जैसे फ़ैक्टर से इस पर असर पड़ सकता है.
ऐप्लिकेशन तैयार होने के बाद, टेस्ट को शेड्यूल किया जाता है. इसके बाद, टेस्ट तब तक कतार में बने रहते हैं, जब तक कोई डिवाइस इसे चलाने के लिए तैयार नहीं हो जाता. जब तक सभी जांच लागू नहीं हो जातीं, तब तक मैट्रिक्स की स्थिति "मंज़ूरी बाकी है" रहेगी. भले ही, जांच की प्रोसेस सूची में है या चल रही है.
मेरे टेस्ट को पूरा होने में
ज़्यादा समय क्यों लग रहा है?
जांच पूरी होने के बाद, डिवाइस से जांच के आर्टफ़ैक्ट डाउनलोड किए जाते हैं, प्रोसेस किए जाते हैं, और Cloud Storage पर अपलोड किए जाते हैं. इस चरण में लगने वाले समय पर, आर्टफ़ैक्ट की संख्या और साइज़ का असर पड़ सकता है.
अक्सर पूछे जाने वाले सवाल
Test Lab के लिए, बिना किसी शुल्क के मिलने वाले कोटा क्या हैं? अगर मेरे पास ज़रूरत के मुताबिक क्रेडिट नहीं है, तो मुझे क्या करना चाहिए?
Firebase Test Lab, डिवाइसों पर जांच करने और Cloud API का इस्तेमाल करने के लिए, बिना किसी शुल्क के कोटा उपलब्ध कराता है. ध्यान दें कि टेस्टिंग कोटा, Firebase के स्टैंडर्ड शुल्क वाले प्लान का इस्तेमाल करता है, जबकि Cloud API कोटा ऐसा नहीं करता.
टेस्टिंग कोटा
जांच का कोटा, जांच के लिए इस्तेमाल किए जाने वाले डिवाइसों की संख्या के आधार पर तय होता है.
Firebase Spark प्लान के लिए, टेस्टिंग कोटा तय है. इसके लिए उपयोगकर्ताओं से कोई शुल्क नहीं लिया जाता. अगर समय के साथ Google Cloud का इस्तेमाल बढ़ता है, तो Blaze प्लान के लिए आपके कोटा में बढ़ोतरी हो सकती है. अगर आपने टेस्टिंग के लिए तय कोटा पूरा कर लिया है, तो अगले दिन तक इंतज़ार करें. अगर आपने फ़िलहाल स्पार्क प्लान लिया है, तो ब्लेज़ प्लान पर अपग्रेड करें.
अगर आपने पहले से ही Blaze प्लान लिया हुआ है, तो कोटा बढ़ाने का अनुरोध किया जा सकता है.
ज़्यादा जानकारी के लिए, टेस्टिंग कोटा देखें.
Google Cloud console में जाकर, टेस्टिंग कोटा के इस्तेमाल को मॉनिटर किया जा सकता है.
Cloud Testing API कोटा
Cloud Testing API के लिए, कोटा की दो सीमाएं तय की गई हैं: हर प्रोजेक्ट के लिए हर दिन के अनुरोध और हर प्रोजेक्ट के लिए हर 100 सेकंड के अनुरोध. Google Cloud कंसोल में जाकर, Gemini के इस्तेमाल को मॉनिटर किया जा सकता है.
Cloud Tool Results API का कोटा
Cloud Tool के रिज़ल्ट एपीआई के लिए, कोटा की दो सीमाएं होती हैं: हर प्रोजेक्ट के लिए हर दिन क्वेरी और हर प्रोजेक्ट के लिए हर 100 सेकंड पर क्वेरी करना. Google Cloud कंसोल में जाकर, Gemini के इस्तेमाल को मॉनिटर किया जा सकता है.
एपीआई की सीमाओं के बारे में ज़्यादा जानकारी के लिए, Test Lab के लिए Cloud API कोटा देखें. अगर आपने एपीआई कोटा पूरा कर लिया है, तो:
Google Cloud कंसोल में जाकर, अपने कोटे में बदलाव करके ज़्यादा कोटे के लिए अनुरोध सबमिट करें. ध्यान दें कि ज़्यादातर सीमाएं डिफ़ॉल्ट रूप से ज़्यादा से ज़्यादा पर सेट होती हैं या
Google Cloud कंसोल में अनुरोध फ़ॉर्म भरकर या Firebase की सहायता टीम से संपर्क करके, एपीआई के लिए ज़्यादा कोटा का अनुरोध करें.
मुझे कैसे पता चलेगा कि मेरे बैकएंड पर पहुंचने वाला ट्रैफ़िक, Test Lab से आ रहा है या नहीं?
अपने बैकएंड से, यह पता लगाया जा सकता है कि ट्रैफ़िक Firebase के होस्ट किए गए टेस्ट डिवाइसों से आ रहा है या नहीं. इसके लिए, सोर्स आईपी पते की तुलना हमारी आईपी रेंज से करें.
क्या Test Lab,
VPC-SC के साथ काम करता है?
Test Lab, VPC-SC के साथ काम नहीं करता. यह Test Lab के इंटरनल स्टोरेज और उपयोगकर्ताओं के नतीजों की बकेट के बीच, ऐप्लिकेशन और टेस्ट के अन्य आर्टफ़ैक्ट को कॉपी करने से रोकता है.
मैं Test Lab में फ़्लैकी टेस्ट का पता कैसे लगाऊं?
अपने टेस्ट में गड़बड़ी का पता लगाने के लिए, हमारा सुझाव है कि आप
--num-flaky-test-attempts
विकल्प का इस्तेमाल करें. डेफ़लेक के फिर से चलाए जाने पर, सामान्य टेस्ट के तौर पर आपके रोज़ के कोटे के हिसाब से बिल भेजा जाता है या उसे गिना जाता है.
निम्नलिखित का ध्यान रखें:
गड़बड़ी का पता चलने पर, टेस्ट पूरा होने की प्रोसेस फिर से शुरू हो जाती है. सिर्फ़ उन टेस्ट केस को फिर से चलाने की सुविधा उपलब्ध नहीं है जो पास नहीं हुए हैं.
Deflake के साथ फिर से कोशिश करने की सुविधा को एक साथ चलाने के लिए शेड्यूल किया गया है. हालांकि, इसके साथ-साथ चलने की गारंटी नहीं दी जाती. उदाहरण के लिए, ऐसा तब हो सकता है, जब ट्रैफ़िक, उपलब्ध डिवाइसों की संख्या से ज़्यादा हो जाता है.
क्या Test Lab, Appium, Flutter/FlutterDriver, ReactNative/Jest या Cucumber के साथ काम करता है?
इनमें से कुछ आइटम हमारे रोडमैप में शामिल हैं. हालांकि, फ़िलहाल हम इन टेस्टिंग और ऐप्लिकेशन डेवलपमेंट प्लैटफ़ॉर्म के साथ काम करने की कोई गारंटी नहीं दे सकते.
मुझे डिवाइस की जानकारी कहां मिलेगी, जैसे कि रिज़ॉल्यूशन वगैरह?
एपीआई की मदद से, डिवाइस की पूरी जानकारी देखी जा सकती है. इसे gcloud क्लाइंट से ऐक्सेस करने के लिए, describe command का इस्तेमाल करें:
gcloud firebase test ios models describe MODEL
क्या iOS टेस्ट के साथ, शार्डिंग का इस्तेमाल किया जा सकता है?
iOS के लिए Test Lab में, शेयर करने की सुविधा डिफ़ॉल्ट रूप से काम नहीं करती. हालांकि, iOS टेस्ट केस को अलग-अलग ग्रुप में बांटने के लिए, Flank क्लाइंट का इस्तेमाल किया जा सकता है.
यह .xctestrun फ़ाइल में OnlyTestIdentifiers कुंजी और वैल्यू सेट करके काम करता है.
ज़्यादा जानकारी के लिए, xcodebuild.xctestrun के लिए man पेज देखें.
ज्ञात समस्याएं
साइन इन करने के लिए कैप्चा
रोबो टेस्ट, साइन इन स्क्रीन को बायपास नहीं कर सकता. इन स्क्रीन पर, साइन इन करने के लिए क्रेडेंशियल डालने के अलावा, उपयोगकर्ता को कुछ और कार्रवाइयां भी करनी पड़ती हैं. उदाहरण के लिए, कैप्चा भरना.
यूज़र इंटरफ़ेस (यूआई) फ़्रेमवर्क के लिए सहायता
रोबो टेस्ट उन ऐप्लिकेशन के साथ बेहतर तरीके से काम करता है जो Android यूज़र इंटरफ़ेस (यूआई) फ़्रेमवर्क के यूज़र इंटरफ़ेस (यूआई) एलिमेंट का इस्तेमाल करते हैं. इन एलिमेंट में View, ViewGroup, और WebView ऑब्जेक्ट शामिल हैं. अगर Unity गेम इंजन का इस्तेमाल करने वाले ऐप्लिकेशन के साथ-साथ, अन्य यूआई फ़्रेमवर्क का इस्तेमाल करने वाले ऐप्लिकेशन की जांच करने के लिए रोबो टेस्ट का इस्तेमाल किया जाता है, तो हो सकता है कि टेस्ट पहली स्क्रीन से आगे बढ़े बिना ही बंद हो जाए.