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

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

कैटबॉक्स डिजाइन और कार्यान्वयन

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

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

CATBox

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

ट्रेडफेड

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

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

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

कैटबॉक्स टेस्ट सूट डाउनलोड

एंड्रॉइड 12

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

एंड्रॉइड 11

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

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

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

  1. डिवाइस लक्ष्य का चयन करें और निम्न आदेश चलाएँ:

    # Select Device Target Based on Device Architecture
    $ lunch <target>
    
  2. CATBox बनाने के लिए, निम्न कमांड चलाएँ:

    # Build CATBox
    $ make catbox
    

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

पर्यावरण सेटअप

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

कैटबॉक्स सेटअप और निष्पादन

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

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

डिवाइस सेटअप

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

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

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

    1. ऑटोमोटिव डिवाइस को फ़ैक्टरी रीसेट करने के लिए, सेटिंग्स > सिस्टम > रीसेट विकल्प > सभी डेटा मिटाएं क्लिक करें।
    2. डिवाइस के स्वचालित रूप से पुनरारंभ होने की प्रतीक्षा करें।
    3. सुनिश्चित करें कि एडीबी सक्षम है। डिवाइस के उपलब्ध होने की पुष्टि करने के लिए, निम्न कमांड चलाएँ:

      $ adb devices
      
    4. रूट सक्षम करने के लिए, निम्न आदेश चलाएँ:

      # Enable Root
      $ adb -s DEVICE_SERIAL root
      

      DEVICE_SERIAL को ऑटोमोटिव डिवाइस के सीरियल आईडी से बदलें।

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

कैटबॉक्स पैकेज निकालें

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

# Extract the CATBox Package
$ unzip android-catbox.zip

# Navigate to extracted CATBox Package
$ 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-notification
catbox-functional-setting
catbox-functional-dial
catbox-functional-system-setting
catbox-functional-app-info-setting
catbox-functional-network-setting
catbox-functional-security-setting
catbox-functional-sound-setting
catbox-functional-date-time-setting
catbox-functional-appgrid
catbox-functional-home
catbox-functional-lock-screen
catbox-functional-navigation-bar
catbox-functional-ux-restriction
catbox-functional-bluetooth-audio
प्रदर्शन परीक्षण योजना catbox-performance-cold-app-start-up-settings
catbox-performance-hot-app-start-up-settings
catbox-performance-jank-settings
catbox-performance-cold-app-start-up-dialer
catbox-performance-hot-app-start-up-dialer
catbox-performance-jank-contact-list
catbox-performance-jank-notifications
catbox-performance-jank-appgrid
catbox-performance-cold-app-start-up-mediacenter
catbox-performance-hot-app-start-up-mediacenter
catbox-performance-create-and-switch-to-new-guest
catbox-performance-create-and-switch-to-new-user
catbox-performance-create-and-switch-to-precreated-guest
catbox-performance-create-and-switch-to-precreated-user
catbox-performance-switch-to-existing-user

कैटबॉक्स परीक्षा परिणाम

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

  • परीक्षण के परिणामों के लिए, test_result.xml देखें।
  • विफलता परीक्षण विवरण के लिए, test_result_failures_suite.html देखें।
  • प्रदर्शन मेट्रिक्स परिणामों के लिए, report-log-files निर्देशिका में CatboxPerformanceTests.reportlog.json देखें।

लॉग को पथ में सहेजा जाता है android-catbox/logs/latest दोनों कार्यात्मक और प्रदर्शन परीक्षण निष्पादन के लिए।

कुछ परीक्षण जैसे डायल, ब्लूटूथ ऑडियो, और संपर्क सूची जंक परीक्षण के लिए अतिरिक्त डिवाइस सेटअप की आवश्यकता होती है।

डायल टेस्ट

डायल परीक्षण के लिए डिवाइस सेटअप और रनटाइम पैरामीटर की आवश्यकता होती है। डिवाइस सेट करने के लिए:

  1. ब्लूटूथ के माध्यम से मोबाइल डिवाइस को ऑटोमोटिव हेड यूनिट से कनेक्ट करें।
  2. सुनिश्चित करें कि परीक्षण फोन में डायल परीक्षण चलाने के लिए एक सिम कार्ड है और यह मोबाइल नेटवर्क से जुड़ा है।
  3. डायल परीक्षण फोन पर संग्रहीत डिफ़ॉल्ट संपर्कों का उपयोग करते हैं। फ़ोन पर संपर्क लोड करने के लिए contact.vcf का उपयोग करें।
  4. COMPANION_SERIAL को फ़ोन के सीरियल आईडी से बदलें और निम्न कमांड चलाएँ:

    # Contacts can be loaded on the phone by pushing the contacts.vcf file on
    the phone and importing it in the Contacts application.
    
    OR
    
    # Importing contacts using adb.
    
    # Push contacts VCF file to phone
    
    $ adb -s COMPANION_SERIAL push <path-to-downloaded-contacts-vcf-file> /storage/emulated/0/Android/data/com.google.android.contacts/contacts.vcf
    
    # Grant Read Permissions
    
    $ adb -s COMPANION_SERIAL shell pm grant com.google.android.contacts
    android.permission.READ_EXTERNAL_STORAGE
    
    # Import contacts from the VCF file
    
    $ adb -s COMPANION_SERIAL shell am start-activity -W -t 'text/x-vcard' -d file:///storage/emulated/0/Android/data/com.google.android.contacts/contacts.vcf
    -a android.intent.action.VIEW com.google.android.contacts
    
    # Then accept the prompts on the UI to load the contacts.
    
रनटाइम पैरामीटर

परीक्षण निष्पादन के लिए डायल परीक्षण छोटे और बड़े फोन नंबरों का उपयोग करते हैं। डायल परीक्षण भी खोज परीक्षणों के लिए संपर्क नाम और संपर्क नंबर का उपयोग करते हैं। यह जानकारी प्रदान करने के लिए निम्नलिखित पैरामीटर का उपयोग करें:

Parameters for Large Phone Number:
--module-arg AndroidAutomotiveDialTests:instrumentation-arg:large-phone-number:=< 10 digit phone number>

Parameters for Small Phone Number:
--module-arg AndroidAutomotiveDialTests:instrumentation-arg:small-phone-number:=< 3 digit phone number>

Parameters for Search Contact Name:
--module-arg AndroidAutomotiveDialTests:instrumentation-arg:search-contact-name:=< some contact name stored on the phone >

Parameters for Search Contact Number:
--module-arg AndroidAutomotiveDialTests:instrumentation-arg:search-contact-number:=< contact number of the name provided in the search contact name >

ब्लूटूथ ऑडियो टेस्ट

ब्लूटूथ ऑडियो परीक्षण के लिए डिवाइस सेट करने के लिए:

  1. सुनिश्चित करें कि YouTube संगीत ऐप फोन पर इंस्टॉल है और आप एक खाते में लॉग इन हैं। यदि नहीं, तो ऐप इंस्टॉल करें और किसी खाते में साइन-इन करें।
  2. ब्लूटूथ के माध्यम से फ़ोन को ऑटोमोटिव डिवाइस से मैन्युअल रूप से जोड़ें।
  3. एक बार फोन पेयर हो जाने के बाद, फोन पर एक गाना बजाएं और फिर टेस्ट करना शुरू करें।

संपर्क सूची जंक टेस्ट

संपर्क सूची जंक परीक्षण के लिए एक उपकरण सेट करने के लिए:

  1. सुनिश्चित करें कि फोन में कई संपर्क हैं ताकि परीक्षण संपर्क सूची के माध्यम से जंक मेट्रिक्स एकत्र करने के लिए स्क्रॉल कर सके।
  2. ब्लूटूथ के माध्यम से फ़ोन को ऑटोमोटिव डिवाइस से मैन्युअल रूप से जोड़ें।
  3. फोन को पेयर करने के बाद, कॉन्टैक्ट्स को डिवाइस पर एक्सेस किया जा सकता है।