टेस्ट लैब को अपने सीआई/सीडी सिस्टम में एकीकृत करें

1 परिचय

अंतिम अद्यतन: 2022-04-07

सीआई/सीडी सिस्टम के साथ मोबाइल परीक्षण कैसे चलाएं

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

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

क्रॉस-प्लेटफ़ॉर्म समर्थन

टेस्ट लैब एंड्रॉइड और आईओएस ऐप्स के लिए परीक्षण समाधान और यूनिटी जैसे मोबाइल गेम्स के लिए विशेष सहायता प्रदान करता है। परीक्षण विकल्प एंड्रॉइड एस्प्रेसो, यूआई ऑटोमेटर और आईओएस एक्ससीटेस्ट जैसे लोकप्रिय परीक्षण ढांचे को कवर करते हैं। हमारे स्वचालित क्रॉलर, रोबो , टेस्ट लैब का उपयोग करके बिना किसी परीक्षण कोड के भी परीक्षण चलाया जा सकता है।

कोई हार्डवेयर आवश्यकता नहीं

टेस्ट लैब भौतिक उपकरणों को Google डेटा केंद्रों में होस्ट करता है, और यह आभासी उपकरणों को Google क्लाउड में होस्ट करता है। आपको बस अपने परीक्षण टेस्ट लैब में भेजने और परिणामों की प्रतीक्षा करने की आवश्यकता है।

तेज़ और विश्वसनीय

एक साथ कई परीक्षण मामलों को चलाने में लंबा समय लग सकता है, जिससे सीआई/सीडी प्रक्रियाएं अवरुद्ध हो सकती हैं। टेस्ट लैब के साथ, आप आसानी से परीक्षणों को शार्प कर सकते हैं और उन्हें समानांतर में कई उपकरणों पर चला सकते हैं। आप पपड़ीपन का भी पता लगा सकते हैं, जो एक सामान्य मोबाइल परीक्षण समस्या है।

आप क्या सीखेंगे

  • परीक्षण कलाकृतियों का निर्माण कैसे करें
  • Gcloud CLI का उपयोग करके मोबाइल परीक्षण कैसे चलाएं
  • जेनकींस सीआई कैसे स्थापित करें
  • जेनकींस सीआई का उपयोग करके मोबाइल परीक्षण कैसे चलाएं
  • सीआई सिस्टम के साथ स्केल अप करने के लिए परीक्षणों को कैसे कॉन्फ़िगर करें

यह कोडलैब परीक्षण चलाने पर केंद्रित है। गैर-प्रासंगिक अवधारणाओं और कोड ब्लॉकों को छिपा दिया गया है और आपको केवल कॉपी और पेस्ट करने के लिए प्रदान किया गया है।

आपको किस चीज़ की ज़रूरत पड़ेगी

यदि आप स्क्रैच से चीज़ें बनाना पसंद करते हैं, तो आपको एंड्रॉइड परीक्षण चलाने के लिए एंड्रॉइड स्टूडियो या आईओएस परीक्षण चलाने के लिए एक्सकोड की आवश्यकता होगी। या बस स्वयं लाएँ और हम कलाकृतियाँ प्रदान करेंगे।

2. जीक्लाउड सीएलआई के साथ एक परीक्षण चलाएँ

एक एंड्रॉइड ऐप एपीके बनाएं और एपीके का परीक्षण करें

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

ग्रैडल कमांड का उपयोग करके एपीके बनाने के लिए, आपको एंड्रॉइड एसडीके इंस्टॉल करना होगा। यदि आपका एंड्रॉइड स्टूडियो आपकी मशीन पर स्थापित नहीं है, तो एंड्रॉइड स्टूडियो और एंड्रॉइड एसडीके इंस्टॉल करें , और अपने एंड्रॉइड एसडीके निर्देशिका के साथ ANDROID_HOME वातावरण सेट करें। उदाहरण के लिए, अपनी ~/.bash_profile फ़ाइल में, निम्न पंक्ति जोड़ें:

export ANDROID_HOME=~/Android/Sdk # For linux
export ANDROID_HOME=~/Library/Android/sdk  # For MacOS

फिर, कोड को क्लोन करने और एपीके बनाने के लिए निम्नलिखित कमांड चलाएँ:

git clone https://github.com/android/testing-samples.git
cd testing-samples/ui/espresso/BasicSample/
./gradlew assembleDebug  # for generating app apk
./gradlew assembleDebugAndroidTest # for generating testing apk

क्लोन और बिल्ड कमांड चलाने के बाद, आप निम्नलिखित स्थानों पर ऐप एपीके और परीक्षण एपीके पा सकते हैं:

app/build/outputs/apk/debug/app-debug.apk
app/build/outputs/apk/androidTest/debug/app-debug-androidTest.apk

वैकल्पिक रूप से, आप परीक्षण और ऐप एपीके प्राप्त करने के लिए निम्नलिखित विकल्पों का उपयोग कर सकते हैं:

  • एंड्रॉइड स्टूडियो में एपीके बनाने के लिए, टेस्ट इन एंड्रॉइड स्टूडियो में दिए गए निर्देशों का पालन करें।
  • नमूना नोटपैड ऐप डाउनलोड करें. बाइनरी फ़ाइल app-debug-unaligned.apk और इंस्ट्रुमेंटेशन परीक्षण फ़ाइल app-debug-test-unaligned.apk उपयोग करें, जो NotePad/app/build/outputs/apk/ में स्थित हैं।

यदि आपके पास iOS ऐप के लिए कार्यशील स्रोत कोड है, तो आप एक XCTest लिख सकते हैं और ऐप और परीक्षणों से एक ज़िप फ़ाइल बना सकते हैं।

टेस्ट लैब के साथ परीक्षण चलाने के लिए gcloud CLI का उपयोग करें

इस अनुभाग में, आप एक फायरबेस प्रोजेक्ट बनाते हैं और अपने स्थानीय Google क्लाउड SDK वातावरण को कॉन्फ़िगर करते हैं। अधिक जानने के लिए, gcloud CLI के साथ परीक्षण प्रारंभ करें देखें।

जीक्लाउड सीएलआई सेट करें

  1. Google क्लाउड SDK डाउनलोड करें, जिसमें gcloud CLI टूल शामिल है।
  2. सत्यापित करें कि आपका इंस्टॉलेशन अद्यतित है:
gcloud components update
  1. अपने Google खाते का उपयोग करके gcloud CLI में साइन इन करें:
gcloud auth login
  1. अपने फायरबेस प्रोजेक्ट को gcloud CLI में सेट करें, जहां PROJECT_ID आपकी फायरबेस प्रोजेक्ट आईडी है। आप प्रोजेक्ट आईडी को फायरबेस कंसोल यूआरएल में पा सकते हैं, जो इस नामकरण परंपरा का पालन करता है: https://console.firebase.google.com/project/[PROJECT_ID]/...
gcloud config set project PROJECT_ID

यदि आपके पास फायरबेस प्रोजेक्ट नहीं है, तो फायरबेस कंसोल में एक बनाएं।

निर्मित APK का उपयोग करके एक परीक्षण चलाएँ

इस अनुभाग में, आप टेस्ट लैब के डिफ़ॉल्ट डिवाइस पर एक इंस्ट्रुमेंटेशन टेस्ट चलाते हैं, जो एपीआई स्तर 28 के साथ पिक्सेल 3 है। यदि आप एक अलग डिवाइस का उपयोग करना चाहते हैं, तो उपलब्ध डिवाइस की जांच करें

ऐप का उपयोग करना और एपीके का परीक्षण करना, जिसे आपने एंड्रॉइड ऐप एपीके और परीक्षण एपीके में बनाया था, निम्नलिखित कमांड का उपयोग करके एंड्रॉइड इंस्ट्रुमेंटेशन परीक्षण चलाएं:

gcloud firebase test android run \
  --type instrumentation \
  --app app/build/outputs/apk/debug/app-debug.apk \
  --test app/build/outputs/apk/androidTest/debug/app-debug-androidTest.apk

परीक्षण परिणामों का विश्लेषण करें

आप निम्नलिखित विकल्पों में से किसी का उपयोग करके परीक्षण परिणामों का विश्लेषण कर सकते हैं:

  • gcloud सारांश - जब आपका परीक्षण समाप्त हो जाता है, तो gcloud CLI आपके परीक्षण परिणामों का एक मूल सारांश प्रिंट करता है।
  • gcloud निकास कोड - परीक्षण पूरा होने के बाद, यदि परीक्षण पास हो जाता है तो कमांड 0 के साथ बाहर निकल जाता है। यदि परीक्षण विफल हो जाता है, तो कमांड गैर-शून्य निकास कोड के साथ बाहर निकल जाता है।
  • फायरबेस कंसोल - जीक्लाउड सीएलआई फायरबेस कंसोल के लिए एक लिंक प्रिंट करता है। लिंक नामकरण परंपरा का अनुसरण करता है https://console.firebase.google.com/project/PROJECT_ID/testlab/... अधिक जानने के लिए, एकल परीक्षण निष्पादन से परिणामों की व्याख्या करें देखें।
  • JUnit XML फ़ाइल - gcloud CLI निम्नलिखित प्रिंट करता है:
Raw results will be stored in your Cloud Storage bucket at [https://console.developers.google.com/storage/browser/test-lab-xxxxx/xxxxx/]

test-lab-xxxxx/xxxxx क्लाउड स्टोरेज बकेट है जो परीक्षण कलाकृतियों और परिणामों को संग्रहीत करता है। परीक्षण परिणाम वाली JUnit XML फ़ाइल का पता लगाने के लिए, लिंक खोलें और blueline-28-en-portrait/test_result_1.xml पर नेविगेट करें।

3. जेनकींस सीआई के साथ स्थापित करें

इस अनुभाग में आप टेस्ट लैब के साथ परीक्षण चलाने के लिए जेनकिंस सीआई, एक लोकप्रिय सीआई प्रणाली का उपयोग करते हैं। यदि आप एक अलग सीआई प्रणाली का उपयोग करना चाहते हैं, तो बड़े परीक्षण सूट चलाने के लिए उन्नत सर्वोत्तम अभ्यास और बिटराइज और सर्कल सीआई जैसी अन्य सीआई प्रणालियों के लिए दस्तावेज़ीकरण देखें। आप gcloud CLI के विकल्प के रूप में फ़्लैंक का उपयोग कर सकते हैं।

जेनकींस के लिए gcloud CLI सक्षम करें

इससे पहले कि आप जेनकींस के साथ टेस्ट लैब का उपयोग कर सकें, आपको आवश्यक एपीआई सक्षम करनी होगी और एक सेवा खाता सेट करना होगा जिसका उपयोग जेनकींस जीक्लाउड सीएलआई के साथ प्रमाणित करने के लिए कर सकता है।

जेनकींस के लिए एक Google क्लाउड सेवा खाता जोड़ें

सेवा खाते सेवा एकीकरण के लिए लक्षित सीमित खाते हैं। ये खाते विशिष्ट सेवाओं के लिए सूक्ष्म नियंत्रण प्रदान करते हैं और स्पैम जांच या कैप्चा संकेतों के अधीन नहीं होते हैं, जो अन्यथा आपके सीआई बिल्ड को अवरुद्ध कर सकते हैं।

सेवा खाता बनाने के लिए, इन चरणों का पालन करें:

  1. Google क्लाउड कंसोल में सेवा खाता पृष्ठ खोलें।
  2. सेवा खाता बनाएं पर क्लिक करें, नाम और विवरण जोड़ें और फिर बनाएं और जारी रखें पर क्लिक करें।
  3. भूमिका चुनें ड्रॉपडाउन से, मूल चुनें और फिर संपादक चुनें।
  4. जारी रखें पर क्लिक करें, फिर पूर्ण पर क्लिक करें।

इसके बाद, आप एक प्रमाणीकरण कुंजी बनाते हैं और डाउनलोड करते हैं जिसका उपयोग जेनकींस आपके द्वारा बनाए गए सेवा खाते के रूप में प्रमाणित करने के लिए कर सकता है।

सेवा खाता कुंजी बनाने और डाउनलोड करने के लिए, इन चरणों का पालन करें:

  1. Google क्लाउड कंसोल में सेवा खाता पृष्ठ से, आपके द्वारा बनाए गए खाते से संबद्ध ईमेल पर क्लिक करें।
  2. कुंजी चुनें, फिर कुंजी जोड़ें और नई कुंजी बनाएं पर क्लिक करें।
  3. JSON चुनें, फिर Create पर क्लिक करें।
  4. जब आपको फ़ाइल डाउनलोड करने के लिए कहा जाए, तो ठीक पर क्लिक करें। फ़ाइल को अपने कंप्यूटर पर किसी सुरक्षित स्थान पर डाउनलोड करें। बाद में जेनकींस को कॉन्फ़िगर करते समय आपको इस फ़ाइल की आवश्यकता होगी।

सेवा खाते बनाने के बारे में अधिक जानने के लिए, सेवा खाता बनाना देखें।

आवश्यक Google क्लाउड एपीआई सक्षम करें

क्लाउड टेस्टिंग एपीआई आपको Google इंफ्रास्ट्रक्चर पर परीक्षण चलाने की सुविधा देता है। जब आपने gcloud CLI के साथ एक परीक्षण पूरा कर लिया तो आपने इस API को सक्षम कर दिया। क्लाउड टूल परिणाम एपीआई आपको प्रोग्रामेटिक रूप से अपने परीक्षण परिणामों तक पहुंचने की सुविधा देता है।

  1. Google डेवलपर्स कंसोल एपीआई लाइब्रेरी खोलें।
  2. फायरबेस कंसोल के शीर्ष पर खोज बार में, प्रत्येक आवश्यक एपीआई ( क्लाउड टेस्टिंग एपीआई और क्लाउड टूल परिणाम एपीआई ) का नाम दर्ज करें। अनुरोधित एपीआई का अवलोकन पृष्ठ प्रकट होता है।
  3. प्रत्येक एपीआई के अवलोकन पृष्ठ पर एपीआई सक्षम करें पर क्लिक करें।

जेनकींस स्थापित करें और सेटअप करें

आप Linux, macOS, Windows और कई अन्य परिवेशों पर जेनकींस CI इंस्टॉल और सेटअप कर सकते हैं। इस कोडलैब के कुछ विवरण लिनक्स पर जेनकिंस सीआई को स्थापित करने और चलाने के लिए विशिष्ट हैं, जिसमें फ़ाइल पथों में स्लैश (/) का उपयोग भी शामिल है।

लिनक्स या विंडोज चलाने वाले कंप्यूटर पर जेनकींस को डाउनलोड और इंस्टॉल करने के लिए, जेनकींस को इंस्टॉल करने के निर्देशों का पालन करें। जेनकींस स्थापित करने के बाद, सेटअप पूरा करने और http://localhost:8080 का उपयोग करके जेनकींस डैशबोर्ड तक पहुंचने के लिए समान जेनकींस स्थापना निर्देशों का पालन करें।

इंस्टॉल किए गए प्लगइन्स को सत्यापित करें

जेनकींस विभिन्न संस्करण नियंत्रण प्रणालियों का समर्थन करता है। इस कोडलैब में, आप पिछले परीक्षण को चलाने के लिए Git का उपयोग करते हैं। और gcloud CLI चलाने का बेहतर अनुभव प्राप्त करने के लिए, आपको GCloud SDK प्लगइन इंस्टॉल करना होगा।

  1. जेनकींस डैशबोर्ड पर, जेनकींस प्रबंधित करें पर क्लिक करें और फिर प्लगइन्स प्रबंधित करें पर क्लिक करें।
  2. Git और GCloud SDK प्लगइन्स खोजें और उन्हें इंस्टॉल करें (यदि वे अभी तक इंस्टॉल नहीं हैं)।

अपने Android और Google क्लाउड SDK का स्थान कॉन्फ़िगर करें

अब आप जेनकींस को निर्देश देते हैं कि Google क्लाउड SDK और Android SDK कहां खोजें।

जेनकींस के लिए Google क्लाउड और Android SDK को कॉन्फ़िगर करने के लिए, इन चरणों का पालन करें:

  1. जेनकींस डैशबोर्ड पर, जेनकींस प्रबंधित करें पर क्लिक करें और फिर ग्लोबल टूल कॉन्फ़िगरेशन पर क्लिक करें।
  2. Google क्लाउड SDK अनुभाग में, Google क्लाउड SDK जोड़ें पर क्लिक करें।
  3. नाम फ़ील्ड में, Google क्लाउड SDK इंस्टेंस के लिए एक नाम दर्ज करें जिसे याद रखना आसान हो, उदाहरण के लिए, GCloud-SDK।
  4. अपनी Google क्लाउड SDK होम निर्देशिका दर्ज करें, उदाहरण के लिए, /opt/google-cloud-sdk
  5. सहेजें पर क्लिक करें.
  6. डैशबोर्ड > जेनकींस प्रबंधित करें > सिस्टम कॉन्फ़िगर करें खोलकर एंड्रॉइड और Google क्लाउड एसडीके के लिए अपने सिस्टम-व्यापी गुणों को कॉन्फ़िगर करें।
  7. पर्यावरण चर चेकबॉक्स चुनें और जोड़ें पर क्लिक करें।
  8. नाम फ़ील्ड में, ANDROID_HOME दर्ज करें। मान फ़ील्ड में, अपने Android SDK का स्थान दर्ज करें, उदाहरण के लिए, /opt/Android/Sdk
  9. टूल लोकेशन चेकबॉक्स पर क्लिक करें और जोड़ें पर क्लिक करें। नाम ड्रॉपडाउन से, उस Google क्लाउड SDK इंस्टेंस का नाम चुनें जिसे आपने ग्लोबल टूल कॉन्फ़िगरेशन में जोड़ा था।
  10. होम फ़ील्ड में, अपने Google क्लाउड SDK का स्थान दर्ज करें, उदाहरण के लिए, /opt/google-cloud-sdk
  11. सहेजें पर क्लिक करें.

जेनकींस में अपना सेवा खाता क्रेडेंशियल जोड़ें

अब आप अपने gcloud CLI सेवा खाता क्रेडेंशियल्स को जेनकींस में जोड़ें ताकि जेनकींस gcloud CLI कमांड को प्रमाणित और सफलतापूर्वक चला सके।

  1. जेनकींस डैशबोर्ड पर, जेनकींस प्रबंधित करें पर क्लिक करें और फिर क्रेडेंशियल प्रबंधित करें पर क्लिक करें।
  2. जेनकींस अनुभाग के दायरे वाले स्टोर में, (वैश्विक) डोमेन लिंक पर क्लिक करें, फिर क्रेडेंशियल जोड़ें पर क्लिक करें।
  3. काइंड ड्रॉपडाउन से, निजी कुंजी से Google सेवा खाता चुनें।
  4. प्रोजेक्ट नाम फ़ील्ड में, अपना फायरबेस प्रोजेक्ट नाम दर्ज करें।
  5. JSON कुंजी चुनें, फिर ब्राउज़ पर क्लिक करें और उस स्थान पर ब्राउज़ करें जहां आपने अपनी सेवा खाता कुंजी सहेजी थी।
  6. बनाएं पर क्लिक करें.

अब आप टेस्ट लैब के लिए अपने जेनकींस स्वचालित बिल्ड को कॉन्फ़िगर करने के लिए तैयार हैं।

4. जेनकींस सीआई के साथ टेस्ट लैब परीक्षण चलाएं

अब जब आपने जेनकींस की स्थापना कर ली है, तो आइए सब कुछ एक साथ रखें और जेनकींस का उपयोग करके वही परीक्षण चलाएं।

आप स्वचालित बिल्ड चलाने के लिए जेनकींस को कॉन्फ़िगर कर सकते हैं और हर बार आपके ऐप में अपडेट चेक किए जाने पर परीक्षण चलाने के लिए कॉन्फ़िगर कर सकते हैं। आप समय-समय पर बिल्ड चलाने के लिए जेनकींस को भी कॉन्फ़िगर कर सकते हैं। जेनकींस में बिल्ड को कॉन्फ़िगर करने के बारे में अधिक जानने के लिए, स्वचालित बिल्ड को कॉन्फ़िगर करना देखें।

अपना जेनकींस प्रोजेक्ट बनाएं और कॉन्फ़िगर करें

टेस्ट लैब के साथ अपने ऐप का निरंतर एकीकरण परीक्षण चलाने के लिए एक प्रोजेक्ट बनाएं।

एक जेनकींस प्रोजेक्ट बनाएं

  1. http://localhost:8080 पर ब्राउज़ करके जेनकींस डैशबोर्ड खोलें।
  2. जेनकींस डैशबोर्ड पर, नया आइटम क्लिक करें।
  3. आइटम नाम फ़ील्ड में अपने प्रोजेक्ट के लिए एक नाम दर्ज करें, और एकल बिल्ड कॉन्फ़िगरेशन का उपयोग करने वाला प्रोजेक्ट बनाने के लिए फ्रीस्टाइल प्रोजेक्ट पर क्लिक करें।
  4. ओके पर क्लिक करें । प्रोजेक्ट कॉन्फ़िगरेशन को पूरा करने के लिए, शेष अनुभागों को क्रम से पूरा करें।

स्रोत कोड प्रबंधन कॉन्फ़िगर करें

  1. स्रोत कोड प्रबंधन टैब से, Git चुनें।
  2. रिपॉजिटरी URL फ़ील्ड में https://github.com/android/testing-samples.git दर्ज करें।

बिल्ड वातावरण कॉन्फ़िगर करें

बिल्ड एनवायरनमेंट अनुभाग आपको बिल्ड विशेषताओं को कॉन्फ़िगर करने देता है। इन चरणों का पालन करके Google क्लाउड प्रमाणीकरण सक्षम करें:

  1. बिल्ड एनवायरनमेंट टैब में, GCloud SDK प्रमाणीकरण चेकबॉक्स का चयन करें और उस इंस्टॉलेशन नाम का चयन करें जिसे आपने अपनी Google क्लाउड इंस्टॉलेशन जानकारी जोड़ते समय चुना था।
  2. Google क्रेडेंशियल ड्रॉपडाउन से, आपके द्वारा कॉन्फ़िगर किए गए सेवा खाता क्रेडेंशियल का चयन करें।

एपीके पैकेजों के पुनर्निर्माण के लिए ग्रैडल बिल्ड चरण जोड़ें

  1. बिल्ड अनुभाग तक नीचे स्क्रॉल करें, बिल्ड चरण जोड़ें पर क्लिक करें और फिर एक्ज़िक्यूट शेल चुनें।
  2. अपने एप्लिकेशन के लिए मुख्य निर्देशिका में निम्नलिखित कमांड चलाने के लिए एक बिल्ड चरण जोड़ें:
cd ui/espresso/BasicSample/
./gradlew assembleDebug  # for generating app apk
./gradlew assembleDebugAndroidTest # for generating testing apk

जेनकींस में एक gcloud CLI बिल्ड चरण जोड़ें

अब आप gcloud CLI कमांड लाइन का उपयोग करके टेस्ट लैब चलाने के लिए जेनकींस में एक बिल्ड चरण जोड़ने के लिए तैयार हैं।

Gcloud CLI बिल्ड चरण जोड़ने के लिए, एक नया एक्ज़ीक्यूट शेल बिल्ड चरण जोड़ें और निम्नलिखित कमांड दर्ज करें:

gcloud config set project PROJECT_ID
gcloud firebase test android run \
--app ${WORKSPACE}/ui/espresso/BasicSample/app/build/outputs/apk/debug/app-debug.apk
--test ${WORKSPACE}/ui/espresso/BasicSample/app/build/outputs/apk/androidTest/debug/app-debug-androidTest.apk

प्रोजेक्ट सेटअप पूरा करने के बाद, पृष्ठ के नीचे स्क्रॉल करें और कॉन्फ़िगरेशन सहेजें। आपको नए प्रोजेक्ट के लिए होम पेज पर पुनः निर्देशित किया गया है।

जेनकींस के साथ परीक्षण चलाएँ

अब आप जेनकिंस प्रोजेक्ट बनाने और जीक्लाउड सीएलआई के साथ चलाए गए मैन्युअल परीक्षण की तरह एक परीक्षण चलाने के लिए तैयार हैं।

जेनकींस के साथ परीक्षण चलाने के लिए, इन चरणों का पालन करें:

  1. बिल्ड को मैन्युअल रूप से ट्रिगर करने के लिए, अभी बनाएं पर क्लिक करें।
  2. नई बिल्ड > कंसोल आउटपुट पर क्लिक करके प्रगति और परिणाम जांचें।

यदि आपको त्रुटियाँ दिखाई नहीं देतीं, तो बधाई हो! आपने बस एक प्रोजेक्ट सेट किया और एक क्लिक से Pixel 2 डिवाइस पर परीक्षण चलाया। यदि आपको त्रुटियाँ मिलती हैं, तो समस्या निवारण देखें।

5. बड़े परीक्षण सूट चलाने के लिए उन्नत सर्वोत्तम अभ्यास

जब आप एक साथ कई परीक्षण चलाना चाहते हैं, तो यह सुनिश्चित करने के लिए इन सर्वोत्तम प्रथाओं का पालन करें कि आपके परीक्षण तेजी से और विश्वसनीय रूप से चलें।

एकाधिक डिवाइस कॉन्फ़िगरेशन पर कवरेज बढ़ाएँ

आप gcloud CLI बिल्ड चरण में आसानी से कई डिवाइस जोड़ सकते हैं। और आप उपलब्ध डिवाइस, संस्करण, स्थान और ओरिएंटेशन की जांच और चयन कर सकते हैं। उदाहरण के लिए, निम्न आदेश दो उपकरणों पर परीक्षण चलाता है:

  • पोर्ट्रेट ओरिएंटेशन और अंग्रेजी लोकेल में एपीआई स्तर 30 के साथ एक वर्चुअल Google Pixel 2
  • लैंडस्केप ओरिएंटेशन और फ्रेंच लोकेल में एपीआई स्तर 29 के साथ एक भौतिक सैमसंग गैलेक्सी एस20
gcloud firebase test android run \
  --type instrumentation \
  --app app-debug.apk \
  --test app-debug-test.apk \
  --device model=Pixel2,version=30,locale=en,orientation=portrait  \
  --device model=x1q,version=29,locale=fr,orientation=landscape

एक gcloud CLI YAML कॉन्फ़िगरेशन फ़ाइल का उपयोग करें

यदि आप अपने तर्कों को एक ही स्थान पर या अपने स्रोत नियंत्रण प्रणाली के साथ प्रबंधित करना चाहते हैं, तो आप इन तर्कों को YAML-स्वरूपित तर्क फ़ाइल में निर्दिष्ट कर सकते हैं। इस सुविधा का उपयोग कैसे करें यह जानने के लिए, gcloud topic arg-files चलाएँ।

शार्ड परीक्षण समानांतर में चलाने के लिए

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

शार्डिंग को सक्षम करने के लिए, gcloud beta चैनल का उपयोग करें, और gcloud CLI बिल्ड चरण में -num-uniform-shards या -test-targets-for-shard फ़्लैग जोड़ें। उदाहरण के लिए, अपने परीक्षणों को पाँच निष्पादनों में विभाजित करने और समानांतर में चलाने के लिए, निम्नलिखित आदेश चलाएँ:

gcloud beta firebase test android run \
  --type instrumentation \
  --app app-debug.apk \
  --test app-debug-test.apk \
  --num-uniform-shards 5

परतदारता का पता लगाना सक्षम करें

मोबाइल परीक्षण अक्सर परतदार हो सकते हैं. कभी-कभी परीक्षण सफल हो जाते हैं, और कभी-कभी वे विफल भी हो सकते हैं, समान सेटअप के साथ भी। आप –num-flaky-test-attempts gcloud CLI ध्वज का उपयोग करके पता लगा सकते हैं कि असफल परीक्षण परतदार था या नहीं। यह ध्वज निर्दिष्ट करता है कि यदि किसी भी कारण से एक या अधिक परीक्षण मामले विफल हो जाते हैं तो कितनी बार परीक्षण निष्पादन का पुन: प्रयास किया जाना चाहिए।

उदाहरण के लिए, प्रारंभिक विफल रन के बाद विफल परीक्षण मामलों को तीन बार फिर से चलाने के लिए, निम्नलिखित निर्दिष्ट करें:

gcloud beta firebase test android run \
  --type instrumentation \
  --app app-debug.apk \
  --test app-debug-test.apk \
  --num-flaky-test-attempts 3

6. बधाई हो

बधाई हो, आपने सीआई प्रणाली के साथ अपना पहला टेस्ट लैब परीक्षण सफलतापूर्वक चलाया!

आपने ऐप बनाया और एपीके का परीक्षण किया, और आपने जीक्लाउड सीएलआई का उपयोग करके टेस्ट लैब के साथ एक इंस्ट्रूमेंटेशन परीक्षण चलाया। आपने उसी परीक्षण को स्वचालित करने के लिए जेनकींस प्रोजेक्ट भी स्थापित किया है।

अब आप टेस्ट लैब को अपने सीआई/सीडी सिस्टम में एकीकृत करने के मुख्य चरणों को जानते हैं।

आगे क्या होगा?

फायरबेस एमुलेटर सूट का उपयोग करके सीआई कैसे सेट करें, इसकी जांच करें

अग्रिम पठन

संदर्भ दस्तावेज़