वाहन संबंधित, बॉक्स में तरह की जांच करें

Complete Automotive Tests in a Box (CATBox) एक ओपन सोर्स पैकेज है. यह Automotive से जुड़े टेस्ट को आसानी से और कम कॉन्फ़िगरेशन के साथ पूरा करने के लिए ज़रूरी फ़्रेमवर्क और टूल उपलब्ध कराता है. CATBox को बढ़ाया जा सकता है. साथ ही, यह उन टूल, इन्फ़्रास्ट्रक्चर, और टेस्ट के साथ काम करता है जिनका इस्तेमाल, Android Automotive OS (AAOS) के इंटिग्रेशन की जांच और पुष्टि करने के लिए किया जाता है. इस वजह से, मार्केटप्लेस को अच्छी क्वालिटी के प्रॉडक्ट उपलब्ध कराए जा सकते हैं.

CATBox को डिज़ाइन करना और लागू करना

CATBox टेस्ट सुइट, Automotive टारगेट डिवाइस पर फ़ंक्शनल और परफ़ॉर्मेंस टेस्ट करने के लिए ज़रूरी टूल, फ़्रेमवर्क, और टेस्ट उपलब्ध कराता है. साथ ही, यह कंपैनियन डिवाइस का इस्तेमाल करते समय भी ऐसा करता है.

इस इमेज में, CATBox पैकेज का हाई लेवल डिज़ाइन दिखाया गया है.

CATBox

पहली इमेज. CATBox पैकेज

Tradefed

Tradefed, लगातार टेस्टिंग करने वाला एक ओपन सोर्स फ़्रेमवर्क है. इसका इस्तेमाल Android डिवाइसों पर टेस्ट चलाने के लिए किया जाता है. ज़्यादा जानकारी के लिए, ट्रेड फ़ेडरेशन की खास जानकारी देखें.

ऑटोमोटिव टेस्ट फ़्रेमवर्क

CATBox, Spectatio नाम के Automotive टेस्ट फ़्रेमवर्क पर आधारित है. यह Automotive डिवाइसों पर अलग-अलग ऐप्लिकेशन की टेस्टिंग के लिए एपीआई उपलब्ध कराता है. इसे UI Automator के आधार पर बनाया गया है. यह एक ओपन सोर्स टेस्टिंग फ़्रेमवर्क है. यह यूज़र इंटरफ़ेस (यूआई) टेस्ट बनाने के लिए एपीआई का एक सेट उपलब्ध कराता है. ये टेस्ट, उपयोगकर्ता और सिस्टम ऐप्लिकेशन के साथ इंटरैक्ट करते हैं.

CATBox टेस्ट सुइट डाउनलोड

Android 14

Android Automotive 14, डेवलपमेंट माइलस्टोन के कोडनेम U की रिलीज़ है. Android 14 के लिए CATBox टेस्ट सुइट डाउनलोड करने के लिए, यहां दिए गए लिंक का इस्तेमाल करें:

Android 12

Android 12, डेवलपमेंट माइलस्टोन का रिलीज़ किया गया वर्शन है. इसका कोडनेम S है. Android 12 के लिए CATBox टेस्ट सुइट डाउनलोड करने के लिए, यहां दिए गए लिंक का इस्तेमाल करें:

Android 11

Android 11, डेवलपमेंट माइलस्टोन की रिलीज़ है. इसका कोडनेम R है. Android 11 के लिए CATBox टेस्ट सुइट डाउनलोड करने के लिए, इन लिंक का इस्तेमाल करें:

CATBox बनाना

Android AOSP कोड, लोकल वर्कस्टेशन पर उपलब्ध होने के बाद, catbox बिल्ड कमांड का इस्तेमाल करें.

CATBox पैकेज को अपने पीसी पर बिल्ड करने के लिए:

  1. डिवाइस के आर्किटेक्चर के आधार पर, डिवाइस टारगेट चुनें. इसके बाद, यह कमांड चलाएं:

    lunch <target>
  2. CATBox बनाने के लिए, यह कमांड चलाएं:

    make catbox

    इस कमांड से, /out/host/linux-x86/catbox डायरेक्ट्री में android-catbox.zip फ़ाइल बनती है. इसका इस्तेमाल टेस्ट चलाने के लिए किया जा सकता है.

एनवायरमेंट सेट अप करना

CATBox टेस्ट चलाने के लिए, एनवायरमेंट सेटअप करने का तरीका CTS को सेट अप करने के तरीके जैसा ही है. एनवायरमेंट सेट अप करने के लिए, यहां दिए गए हर टास्क को पूरा करें:

CATBox को सेट अप और इस्तेमाल करना

Android डिवाइसों पर टेस्ट चलाने के लिए, Tradefed टेस्ट फ़्रेमवर्क का इस्तेमाल करें. CATBox सेट अप करने से पहले, Trade Federation की खास जानकारी देखें.

CATBox को सेट अप करने और चलाने के लिए, यहां दिए गए सेक्शन देखें.

डिवाइस सेट अप करना

टेस्ट प्लान चलाने से पहले, अपने डिवाइस को सेट अप करने के लिए यह तरीका अपनाएं:

  1. पक्का करें कि आपने Android डीबग ब्रिज (adb) और Android ऐसेट पैकेजिंग टूल (AAPT), दोनों के नए वर्शन इंस्टॉल किए हों. साथ ही, इन टूल की जगह को अपनी मशीन के सिस्टम पाथ में जोड़ा हो. ज़्यादा जानकारी के लिए, ADB और AAPT देखें.

  2. कम से कम एक डिवाइस कनेक्ट करें और जांच किए जा रहे डिवाइस (DUT) को इस तरह तैयार करें:

    1. ऑटोमोटिव डिवाइस को फ़ैक्ट्री रीसेट करने के लिए, सेटिंग > सिस्टम > रीसेट करने के विकल्प > पूरा डेटा मिटाएं पर जाएं.

    2. डिवाइस के अपने-आप रीस्टार्ट होने का इंतज़ार करें.

    3. पक्का करें कि adb चालू हो. यह पुष्टि करने के लिए कि डिवाइस उपलब्ध है, यह कमांड चलाएं:

      adb devices
    4. रूट को चालू करने के लिए, यह कमांड चलाएं:

      adb -s DEVICE_SERIAL root

      DEVICE_SERIAL की जगह, वाहन में लगे डिवाइस का सीरियल आईडी डालें.

    5. वाई-फ़ाई से कनेक्ट करें.

CATBox पैकेज को एक्सट्रैक्ट करें

डिवाइस सेट अप करने के बाद, CATBox पैकेज को अनज़िप करें और निकाले गए फ़ोल्डर पर जाएं:

unzip android-catbox.zip
cd android-catbox

CATBox में टेस्ट चलाना

CATBox पैकेज में मौजूद टेस्ट प्लान के साथ CATBox चलाने के लिए:

./tools/catbox-tradefed run commandAndExit TEST_PLAN_NAME --serial DEVICE_SERIAL

DEVICE_SERIAL की जगह, वाहन में लगे डिवाइस का सीरियल आईडी डालें. अगर आपने होस्ट मशीन से कई डिवाइस कनेक्ट किए हैं, तो उन्हें अलग-अलग दिखाने के लिए DEVICE_SERIAL का इस्तेमाल करें. TEST_PLAN_NAME को उस टेस्ट प्लान के नाम से बदलें जिसे आपको चलाना है.

उपलब्ध प्लान की पूरी सूची पाने के लिए, कमांड लाइन का इस्तेमाल करें:

./tools/catbox-tradefed list plans | grep -i catbox

टेस्ट प्लान के टाइप

यहां दी गई टेबल में, उपलब्ध फ़ंक्शनल टेस्ट प्लान दिखाए गए हैं.

फ़ंक्शन की जांच के प्लान ब्यौरा
catbox-functional फ़ंक्शन की जांच.
catbox-functional-app-info-setting ऐप्लिकेशन की जानकारी सेव करने वाली सेटिंग के फ़ंक्शन की जांच.
catbox-functional-admin-user-grant-permissions एडमिन उपयोगकर्ता को अनुमतियां देने से जुड़े फ़ंक्शन के टेस्ट.
catbox-functional-app-info-setting-ui-elements ऐप्लिकेशन की जानकारी सेव करने वाली सेटिंग के फ़ंक्शन की जांच.
catbox-functional-appgrid ऐप्लिकेशन ग्रिड के फ़ंक्शन की जांच.
catbox-functional-base फ़ंक्शन की जांच की सूची.
catbox-functional-bluetooth-audio ब्लूटूथ ऑडियो के फ़ंक्शन की जांच.
catbox-functional-bluetooth-palette स्टेटस बार के फ़ंक्शन की जांच करना.
catbox-functional-bluetooth-tests Mobly का इस्तेमाल करके ब्लूटूथ की जांच करना.
catbox-functional-brightness-palette स्टेटस बार के फ़ंक्शन की जांच करना.
catbox-functional-btmoped ब्लूटूथ की सुविधा वाले मोपेड पर फ़ंक्शन की जांच.
catbox-functional-date-time-setting तारीख और समय की सेटिंग से जुड़े फ़ंक्शन की जांच.
catbox-functional-dial डायल फ़ंक्शन की जांच करना.
catbox-functional-display-setting डिसप्ले सेटिंग के फ़ंक्शन की जांच करने वाले कुकी.
catbox-functional-driving-optimized-apps यूज़र एक्सपीरियंस से जुड़ी पाबंदियों के फ़ंक्शनल टेस्ट.
catbox-functional-enable-developers-option डेवलपर के लिए उपलब्ध सेटिंग और टूल के फ़ंक्शनल टेस्ट चालू करें.
catbox-functional-home घर पर फ़ंक्शन की जांच.
catbox-functional-lock-screen लॉक स्क्रीन की सुविधाओं के फ़ंक्शनल टेस्ट.
catbox-functional-mediacenter मीडिया सेंटर के फ़ंक्शन की जांच.
catbox-functional-microphone-recent-apps माइक्रोफ़ोन की सेटिंग से जुड़े फ़ंक्शन की जांच.
catbox-functional-microphone-setting माइक्रोफ़ोन की सेटिंग से जुड़े फ़ंक्शन की जांच.
catbox-functional-multiuser एक से ज़्यादा उपयोगकर्ताओं के लिए फ़ंक्शन की जांच.
catbox-functional-multiuser-system-user एक से ज़्यादा उपयोगकर्ताओं के लिए फ़ंक्शन की जांच.
catbox-functional-navigation-bar नेविगेशन बार के फ़ंक्शन की जांच.
catbox-functional-network-palette स्टेटस बार के फ़ंक्शन की जांच करना.
catbox-functional-network-setting नेटवर्क सेटिंग के फ़ंक्शन की जांच.
catbox-functional-notification सूचना से जुड़े फ़ंक्शन की जांच.
catbox-functional-privacy-permission-manager निजता से जुड़ी सेटिंग के लिए, ऐप्लिकेशन की अनुमति से जुड़े फ़ंक्शन के टेस्ट.
catbox-functional-privacy-setting माइक्रोफ़ोन की सेटिंग से जुड़े फ़ंक्शन की जांच.
catbox-functional-privacy-setting-ui-elements निजता सेटिंग के फ़ंक्शन की जांच.
catbox-functional-profile-icon प्रोफ़ाइल आइकॉन बार के फ़ंक्शन की जांच करना.
catbox-functional-profiles-icon-list प्रोफ़ाइल आइकॉन की सूची से जुड़े टेस्ट.
catbox-functional-security-setting सुरक्षा सेटिंग के फ़ंक्शन की जांच.
catbox-functional-setting फ़ंक्शन की जांच सेट करना.
catbox-functional-settings-location जगह की जानकारी की सेटिंग की जांच करना.
catbox-functional-sound-setting आवाज़ की सेटिंग से जुड़े फ़ंक्शन की जांच.
catbox-functional-status-bar स्टेटस बार के फ़ंक्शन की जांच करना.
catbox-functional-storage-setting स्टोरेज की सेटिंग से जुड़े फ़ंक्शन की जांच.
catbox-functional-system-setting सिस्टम सेटिंग के फ़ंक्शन की जांच.
catbox-functional-systemui सिस्टम यूज़र इंटरफ़ेस (यूआई) की जांच.
catbox-functional-ux-restriction यूज़र एक्सपीरियंस से जुड़ी पाबंदियों के फ़ंक्शनल टेस्ट.
catbox-functional-ux-restriction-facet-bar यूज़र एक्सपीरियंस (यूएक्स) से जुड़ी पाबंदी के फ़ंक्शन की जांच.

यहां दी गई टेबल में, CATBox परफ़ॉर्मेंस टेस्ट प्लान की सूची दी गई है.

परफ़ॉर्मेंस टेस्ट प्लान ब्यौरा
catbox-performance-cold-app-start-up-dialer डायल और फ़ोन ऐप्लिकेशन के कोल्ड स्टार्ट-अप की परफ़ॉर्मेंस की जांच.
catbox-performance-cold-app-start-up-mediacenter Media Center के लिए, ऐप्लिकेशन के कोल्ड स्टार्ट-अप की परफ़ॉर्मेंस की जांच.
catbox-performance-cold-app-start-up-settings सेटिंग के लिए, ऐप्लिकेशन के कोल्ड स्टार्ट-अप की परफ़ॉर्मेंस की जांच.
catbox-performance-create-and-switch-to-new-guest नई मेहमान प्रोफ़ाइल पर स्विच करने में लगने वाले समय का आकलन करता है.
catbox-performance-create-and-switch-to-new-user एडमिन नहीं है, ऐसे नए उपयोगकर्ता पर स्विच करने में लगने वाले समय का आकलन करें.
catbox-performance-hot-app-start-up-dialer डायल और फ़ोन ऐप्लिकेशन के लिए, हॉट ऐप्लिकेशन स्टार्ट-अप परफ़ॉर्मेंस टेस्ट.
catbox-performance-hot-app-start-up-mediacenter Media Center के लिए, ऐप्लिकेशन के तुरंत स्टार्ट-अप होने की परफ़ॉर्मेंस की जांच.
catbox-performance-hot-app-start-up-settings सेटिंग ऐप्लिकेशन के लिए, हॉट ऐप्लिकेशन स्टार्ट-अप परफ़ॉर्मेंस टेस्ट.
catbox-performance-jank-appgrid Appgrid के लिए परफ़ॉर्मेंस टेस्ट.
catbox-performance-jank-contact-list संपर्कों के लिए परफ़ॉर्मेंस टेस्ट.
catbox-performance-jank-media मीडिया के लिए परफ़ॉर्मेंस टेस्ट.
catbox-performance-jank-media-switch-playback मीडिया स्विच करने पर, वीडियो चलाने की सुविधा की परफ़ॉर्मेंस की जांच.
catbox-performance-jank-notifications सूचनाओं की परफ़ॉर्मेंस की जांच.
catbox-performance-jank-settings सेटिंग के लिए परफ़ॉर्मेंस टेस्ट.
catbox-performance-switch-to-existing-user इस कुकी का इस्तेमाल, किसी मौजूदा उपयोगकर्ता के खाते में स्विच करने में लगने वाले समय का पता लगाने के लिए किया जाता है.

एक से ज़्यादा डिवाइसों पर होस्ट साइड टेस्ट चलाना

एक से ज़्यादा डिवाइसों पर होस्ट साइड टेस्ट को लागू करने के लिए, CATBox का इस्तेमाल किया जाता है. इससे एक ही सेशन में टेस्ट चलाया जा सकता है. उदाहरण के लिए, BTDiscoveryTest:

make catbox
./tools/catbox-tradefed run commandAndExit catbox-functional-bluetooth-tests --{phone}serial <serial> --{auto}serial <serial> --mobly-host:mobly-par-file-name BTDiscoveryTest

CATBox, apk इंस्टॉल करता है. इसके बाद, टेस्ट को सही Python एक्ज़ीक्यूशन एनवायरमेंट में चलाया जाता है.

CATBox टेस्ट के नतीजों की समीक्षा करना

फ़ंक्शनल और परफ़ॉर्मेंस टेस्ट रन के नतीजे, android-catbox/results/latest में सेव किए जाते हैं.

नतीजे का टाइप जगह
परीक्षण परिणाम test_result.xml
टेस्ट के फ़ेल होने की जानकारी test_result_failures_suite.html
परफ़ॉर्मेंस मेट्रिक के नतीजे /report-log-files/CatboxPerformanceTests.reportlog.json
फ़ंक्शन और परफ़ॉर्मेंस की जांच करना /android-catbox/logs/latest