एक बॉक्स में पूरा ऑटोमोटिव टेस्ट

कंप्लीट ऑटोमोटिव टेस्ट इन ए बॉक्स (CATBox) एक ओपन सोर्स पैकेज है जो न्यूनतम कॉन्फ़िगरेशन के साथ ऑटोमोटिव परीक्षणों को सुव्यवस्थित और निष्पादित करने के लिए आवश्यक रूपरेखा और उपकरण प्रदान करता है। CATBox आपके एंड्रॉइड ऑटोमोटिव OS (AAOS) कार्यान्वयन का परीक्षण और सत्यापन करने के लिए आपके द्वारा उपयोग किए जाने वाले टूल, बुनियादी ढांचे और परीक्षणों के साथ स्केलेबल और संगत है। परिणामस्वरूप, आप बाज़ार में उच्च गुणवत्ता वाले उत्पाद उपलब्ध करा सकते हैं।

CATBox डिज़ाइन और कार्यान्वयन

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

निम्नलिखित छवि CATBox पैकेज के उच्च स्तरीय डिज़ाइन को दर्शाती है।

CATBox

चित्र 1. कैटबॉक्स पैकेज

ट्रेडफेड

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

ऑटोमोटिव परीक्षण ढांचा

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

CATBox परीक्षण सुइट डाउनलोड

एंड्रॉइड 14

एंड्रॉइड ऑटोमोटिव 14 विकास मील का पत्थर कोड-नाम यू की रिलीज है। एंड्रॉइड 14 के लिए CATBox परीक्षण सूट डाउनलोड करने के लिए निम्नलिखित लिंक का उपयोग करें:

एंड्रॉइड 12

एंड्रॉइड 12 विकास मील का पत्थर कोड-नाम एस की रिलीज है। एंड्रॉइड 12 के लिए CATBox परीक्षण सूट डाउनलोड करने के लिए निम्नलिखित लिंक का उपयोग करें:

एंड्रॉइड 11

एंड्रॉइड 11 विकास मील का पत्थर कोड-नाम आर की रिलीज है। एंड्रॉइड 11 के लिए CATBox परीक्षण सूट डाउनलोड करने के लिए निम्नलिखित लिंक का उपयोग करें:

कैटबॉक्स बनाएं

स्थानीय वर्कस्टेशन पर एंड्रॉइड एओएसपी कोड उपलब्ध होने पर catbox बिल्ड कमांड का उपयोग करें।

CATBox पैकेज को स्थानीय रूप से बनाने के लिए:

  1. डिवाइस आर्किटेक्चर के आधार पर डिवाइस लक्ष्य का चयन करें और निम्नलिखित कमांड चलाएँ:

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

    make catbox
    

    यह कमांड /out/host/linux-x86/catbox निर्देशिका में android-catbox.zip फ़ाइल बनाता है, जिसका उपयोग परीक्षण चलाने के लिए किया जा सकता है।

वातावरण स्थापित करें

CATBox परीक्षणों को निष्पादित करने के लिए आवश्यक पर्यावरण सेटअप CTS की स्थापना के समान है। परिवेश स्थापित करने के लिए, निम्नलिखित में से प्रत्येक कार्य को पूरा करें:

CATBox सेट अप करें और चलाएं

एंड्रॉइड डिवाइस पर परीक्षण चलाने के लिए ट्रेडफेड परीक्षण ढांचे का उपयोग करें। CATBox सेट करने से पहले, ट्रेड फेडरेशन अवलोकन देखें।

CATBox को सेट अप करने और चलाने के लिए, नीचे दिए गए अनुभाग देखें।

डिवाइस सेट करें

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

  1. सुनिश्चित करें कि आपने एंड्रॉइड डिबग ब्रिज (एडीबी) और एंड्रॉइड एसेट पैकेजिंग टूल (एएपीटी) दोनों के नवीनतम संस्करण स्थापित किए हैं, साथ ही इन टूल्स का स्थान अपनी मशीन के सिस्टम पथ में जोड़ा है। विवरण के लिए, एडीबी और एएपीटी देखें।

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

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

    2. डिवाइस के स्वचालित रूप से पुनरारंभ होने की प्रतीक्षा करें।

    3. सुनिश्चित करें कि एडीबी सक्षम है। यह पुष्टि करने के लिए कि डिवाइस उपलब्ध है, निम्न कमांड चलाएँ:

      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 मीडिया सेंटर के लिए कोल्ड ऐप स्टार्ट-अप प्रदर्शन परीक्षण।
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 मीडिया सेंटर के लिए हॉट ऐप स्टार्ट-अप प्रदर्शन परीक्षण।
catbox-performance-hot-app-start-up-settings सेटिंग्स के लिए हॉट ऐप स्टार्ट-अप प्रदर्शन परीक्षण।
catbox-performance-jank-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 इंस्टॉल करता है और फिर परीक्षण सही पायथन निष्पादन वातावरण में चलाया जाता है।

CATBox परीक्षण परिणामों की समीक्षा करें

कार्यात्मक और प्रदर्शन परीक्षण रन के परिणाम android-catbox/results/latest में सहेजे जाते हैं।

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