किसी भी कंटिन्यूअस इंटिग्रेशन (सीआई) सिस्टम का इस्तेमाल करके ऐप्लिकेशन डेवलप करते समय, Firebase Test Lab का इस्तेमाल किया जा सकता है. कंटिन्यूअस इंटिग्रेशन सिस्टम, आपको अपने-आप हर बार अपने ऐप्लिकेशन के सोर्स कोड के अपडेट देखने पर, उसे बिल्ड और टेस्ट किया जा सकता है.
जेनकिन्स CI के साथ Firebase Test Lab का इस्तेमाल किया जा रहा है
इस सेक्शन में बताया गया है कि Test Lab का इस्तेमाल कैसे किया जाता है जेनकिन्स सीआई.
ज़रूरी शर्तें
जेनकिन्स के साथ Firebase Test Lab का इस्तेमाल करने से पहले, आपको इन्हें पूरा करना होगा इसके लिए, नीचे दिया गया तरीका अपनाएं:
gcloud सेट अप करें. निर्देशों का पालन करें gcloud कमांड लाइन से Firebase Test Lab का इस्तेमाल करना Firebase प्रोजेक्ट बनाने और अपना लोकल Google Cloud SDK टूल कॉन्फ़िगर करने के लिए पर्यावरण को ध्यान में रखकर काम करना.
सेवा खाता बनाना और उसे अनुमति देना. सेवा खातों पर यह पाबंदी लागू नहीं होती है की अनुमति दें. इससे आपके सीआई को ब्लॉक किया जा सकता है. बिल्ड. Google Cloud कंसोल में, एडिटर की भूमिका वाला एक सेवा खाता बनाएं. इसके बाद, उसे चालू करें. ऐसा करने का तरीका जानने के लिए, gcloud auth activate-service-account दस्तावेज़ देखें.
ज़रूरी एपीआई चालू करें. सेवा खाते का इस्तेमाल करके लॉग इन करने के बाद: Google Developers Console एपीआई लाइब्रेरी पेज, Google Cloud Testing API और Cloud Tool Results API चालू करें. यहां की यात्रा पर हूं इन API को सक्षम करने के लिए, शीर्ष पर स्थित खोज बॉक्स में इन API नाम को टाइप करें कंसोल को चुनें और उसके बाद उस एपीआई के खास जानकारी देने वाले पेज पर एपीआई चालू करें पर क्लिक करें.
जेनकिन्स को इंस्टॉल और सेट अप करना
Linux या Windows पर Jenkins CI इंस्टॉल और सेट अप किया जा सकता है. उदाहरण के लिए,
इस गाइड का इस्तेमाल, खास तौर पर Linux पर जेनकिन्स CI को इंस्टॉल करने और उसे चलाने के लिए किया गया है. इसमें,
फ़ाइल पाथ में स्लैश (/
) का इस्तेमाल करना.
Linux या Windows वाले कंप्यूटर पर Jenkins डाउनलोड और इंस्टॉल करने के लिए, Jenkins इंस्टॉल करने के निर्देशों का पालन करें. Jenkins को इंस्टॉल करने के बाद, सेटअप पूरा करने और Jenkins डैशबोर्ड को ऐक्सेस करने के लिए, Jenkins को शुरू करने और ऐक्सेस करने के निर्देशों का पालन करें.
वैश्विक सुरक्षा सेटिंग कॉन्फ़िगर करें
जब जेनकिन्स के पास उपयोगकर्ता की पुष्टि करने और ऐक्सेस कंट्रोल कॉन्फ़िगर करने की सुविधा नहीं होती पहले इंस्टॉल किया जाता है. Firebase Test Lab के साथ Jenkins का इस्तेमाल करने से पहले, ऐक्सेस कंट्रोल लागू करने और उपयोगकर्ताओं की पुष्टि करने के लिए, ग्लोबल सुरक्षा सेटिंग कॉन्फ़िगर करें.
वैश्विक सुरक्षा सेटिंग कॉन्फ़िगर करने के लिए
- अपने सर्वर पर Jenkins डैशबोर्ड पर जाएं. ऐसा करने के लिए, इस पर ब्राउज़ करें: http://<servername>:8080, जहां <servername> नाम है जहां आपने जेनकिन्स इंस्टॉल किया है.
- जेनकिन्स डैशबोर्ड पर, Jenकिन्स को प्रबंधित करें पर क्लिक करें और फिर ग्लोबल सिक्योरिटी को कॉन्फ़िगर करें.
- ग्लोबल सिक्योरिटी कॉन्फ़िगर करें पेज पर, सुरक्षा चालू करें पर क्लिक करें और इसके बाद, सेव करें पर क्लिक करें.
जेनकिन्स के लिए सुरक्षा सेटिंग कॉन्फ़िगर करने के बारे में ज़्यादा जानकारी के लिए, देखें तेज़ और आसान सुरक्षा, स्टैंडर्ड सुरक्षा सेटअप, और जेनकिन्स को सुरक्षित करना.
Jenkins प्रोजेक्ट बनाना
इसके बाद, अपने ऐप्लिकेशन का लगातार इंटिग्रेशन टेस्ट करने के लिए एक प्रोजेक्ट बनाएं Firebase Test Lab के साथ.
Jenkins प्रोजेक्ट बनाने के लिए
- अपने सर्वर पर Jenkins डैशबोर्ड पर जाएं. ऐसा करने के लिए, इस पर ब्राउज़ करें: http://<servername>:8080, जहां <servername> नाम है जहां आपने जेनकिन्स इंस्टॉल किया है.
- Jenkins के डैशबोर्ड में, नया आइटम पर क्लिक करें.
- आइटम का नाम फ़ील्ड में, अपने प्रोजेक्ट का नाम टाइप करें:
- सिंगल बिल्ड का इस्तेमाल करने वाला प्रोजेक्ट बनाने के लिए, Freestyle प्रोजेक्ट चुनें कॉन्फ़िगरेशन.
- ऐसा प्रोजेक्ट बनाने के लिए, मल्टी-कॉन्फ़िगरेशन प्रोजेक्ट बनाएं चुनें कई अलग-अलग बिल्ड कॉन्फ़िगरेशन पर काम करता हो. अगर आपको अपने ऐप्लिकेशन को कई तरह के बिल्ड कॉन्फ़िगरेशन (कई भाषाओं, कई Android एपीआई लेवल वगैरह) के साथ बनाना है, तो कई कॉन्फ़िगरेशन वाला प्रोजेक्ट सबसे सही विकल्प है.
- सेव करें पर क्लिक करें.
प्रोजेक्ट बन जाने के बाद, आपका वेब ब्राउज़र आपके प्रोजेक्ट का मुख्य पेज दिखाता है.
बदलाव कंट्रोल और Gradle बिल्ड के चरण जोड़ना
इस सेक्शन में, GitHub जैसे बदलाव कंट्रोल सिस्टम के साथ Jenkins को इंटिग्रेट करने का तरीका बताया गया है. साथ ही, सोर्स कोड से APK पैकेज बनाने के लिए, Gradle बिल्ड के चरणों को जोड़ने का तरीका भी बताया गया है.
GitHub और बदलावों को कंट्रोल करने वाले दूसरे सिस्टम के साथ इंटिग्रेट करना
अगर अपने ऐप्लिकेशन के सोर्स कोड को मैनेज करने के लिए, GitHub या किसी दूसरे रिविज़न कंट्रोल सिस्टम का इस्तेमाल किया जाता है, तो Jenkins को कॉन्फ़िगर करके, अपने-आप बिल्ड चलाने और हर बार ऐप्लिकेशन के अपडेट की जांच करने के बाद टेस्ट चलाने की सुविधा चालू की जा सकती है. यह भी कॉन्फ़िगर किया जा सकता है कि समय-समय पर बिल्ड को रन करने के लिए जेनकिन्स.
जेनकिन्स में बिल्ड कॉन्फ़िगर करने के बारे में जानने के लिए, यहां देखें अपने-आप बनने वाले बिल्ड कॉन्फ़िगर करना.
APK पैकेज फिर से बनाने के लिए, Gradle बिल्ड के चरणों को जोड़ना
अगर आप अपने ऐप्लिकेशन के सोर्स कोड को मैनेज करने के लिए किसी रिविज़न कंट्रोल सिस्टम का इस्तेमाल करते हैं, तो हर बार जेनकिन्स पर नई APK बाइनरी बनाने के लिए, Gradle बिल्ड स्टेप शामिल करना होगा आपके पुनरीक्षण नियंत्रण सिस्टम से स्रोत कोड डाउनलोड करता है.
अपने ऐप्लिकेशन की मुख्य डायरेक्ट्री में ये कमांड चलाने के लिए, बिल्ड करने का चरण जोड़ें:
./gradlew :app:assembleDebug ./gradlew :app:assembleDebugAndroidTest
जांच के दौरान, Gradle के बनाए गए APK पैकेज का इस्तेमाल करने के लिए, एक बिल्ड चरण जोड़ें Test Lab के साथ. इस पाथ का इस्तेमाल, यहां दी गई शेल स्क्रिप्ट के उदाहरण में <local_server_path> के तौर पर किया जा सकता है. यहां <AppFolder> आपके ऐप्लिकेशन के लिए Android Studio प्रोजेक्ट फ़ोल्डर है:
<AppFolder>/app/build/outputs/apk
जेनकिन्स में Test Lab बिल्ड स्टेप जोड़ें
अब आपके पास Jenkins में एक बिल्ड चरण जोड़ने का विकल्प है, ताकि gcloud कमांड लाइन का इस्तेमाल करके Test Lab को चलाया जा सके.
gcloud बिल्ड जोड़ने का तरीका
- अपने प्रोजेक्ट के मुख्य पेज पर, कॉन्फ़िगर करें पर क्लिक करें.
प्रोजेक्ट कॉन्फ़िगरेशन पेज पर, नीचे की ओर स्क्रोल करके बिल्ड सेक्शन पर जाएं. इसके बाद, बिल्ड चरण जोड़ें मेन्यू से शेल चलाएं चुनें.
Jenकिन्स चार्ज़िंग शेल कमांड विंडो में यह डालें. <local_server_path> को सैंपल ऐप्लिकेशन के पाथ के लिए सर्वर, आपके ऐप्लिकेशन के APK के लिए <app_apk>, और आपके ऐप्लिकेशन के टेस्ट APK के लिए <app_test_apk>:
gcloud firebase test android run --app <local_server_path>/<app_apk>.apk --test <local_server_path>/<app_test_apk>.apk
टेस्ट के नतीजों का विश्लेषण करना
Test Lab आपके ऐप्लिकेशन की जांच करने के बाद, Firebase कंसोल या अपने प्रोजेक्ट में Google Cloud Storage बकेट में, जांच के नतीजों की समीक्षा की जा सकती है. आप यह भी जोड़ सकते हैं
gsutil
कमांड को
शेल कमांड दिखाया गया है. इसका इस्तेमाल, टेस्ट नतीजों के डेटा को आपके कंप्यूटर में कॉपी करने के लिए किया जा सकता है.
इस बारे में ज़्यादा जानने के लिए, यह देखें
Firebase Test Lab के नतीजों का विश्लेषण किया जा रहा है.
अन्य सीआई सिस्टम के साथ लगातार इंटिग्रेशन
अन्य सीआई सिस्टम के साथ Firebase Test Lab का इस्तेमाल करने का तरीका जानने के लिए, उनके दस्तावेज़ देखें: