सीटीएस वेरिफ़ायर के होस्ट-साइड टेस्ट चलाना

इस पेज पर, CTS Verifier (CTS-V) के होस्ट-साइड Android 16 QPR2 और Android 17 टेस्ट को सेट अप करने और चलाने के निर्देश दिए गए हैं. होस्ट-साइड पर दो तरह के टेस्ट होते हैं: मल्टीडिवाइस टेस्ट (Android 17 से पहले पेश किए गए) और इंटरैक्टिव टेस्ट (Android 17 में नई सुविधा):

  • एक से ज़्यादा डिवाइसों पर किए जाने वाले टेस्ट, पूरी तरह से ऑटोमेटेड टेस्ट होते हैं.
  • इंटरैक्टिव टेस्ट, सेमी-ऑटोमेटेड टेस्ट होते हैं. इनके लिए, आपको जांच किए जा रहे डिवाइस (DUT) पर कुछ मैन्युअल चरण पूरे करने होते हैं.

नए इंटरैक्टिव टेस्ट के अलावा, मैन्युअल रेंजिंग की सटीक जानकारी और टेलीकॉम टेस्ट अब होस्ट-साइड पर कई डिवाइसों के साथ किए जाने वाले टेस्ट हैं. साथ ही, वाई-फ़ाई कनेक्शन टेस्ट करना ज़रूरी है.

होस्ट-साइड पर टेस्ट सेट अप करना

होस्ट-साइड टेस्ट सेट अप करने के लिए, यह तरीका अपनाएं. मल्टीडिवाइस टेस्ट के लिए, अतिरिक्त सेटअप की ज़रूरत होती है:

  1. पुष्टि करें कि आपका डेस्कटॉप कंप्यूटर, CTS के लिए ऑपरेटिंग सिस्टम से जुड़ी ज़रूरी शर्तें पूरी करता हो.

  2. डेस्कटॉप सॉफ़्टवेयर इंस्टॉल करना लेख में दिए गए दूसरे और पांचवें चरण को पूरा करें. इससे आपको यह पुष्टि करने में मदद मिलेगी कि आपके डेस्कटॉप पर adb, AAPT2, और Python सही तरीके से इंस्टॉल किए गए हैं.

    • डेस्कटॉप पर Python का वर्शन 3.11 या इसके बाद का होना चाहिए. Python का वर्शन पता करने के लिए, python3 --version चलाएं. अगर वर्शन 3.11 से कम है, तो Python का नया आधिकारिक वर्शन इंस्टॉल करें. ज़्यादा जानकारी के लिए, python.org के डाउनलोड सेक्शन देखें.

    • कुछ टेस्ट के लिए, होस्ट में Python venv मॉड्यूल होना ज़रूरी है. Debian और Ubuntu सिस्टम पर, यह मॉड्यूल डिफ़ॉल्ट रूप से इंस्टॉल नहीं होता. यह पता लगाने के लिए कि डेस्कटॉप Python वर्शन में venv मॉड्यूल है या नहीं, python3 -m venv venv चलाएं. अगर यह कमांड काम नहीं करती है, तो गड़बड़ी का मैसेज दिखता है. python3.x-venv पैकेज इंस्टॉल करने के लिए, दिए गए निर्देश का पालन करें.

अगर आपको सिर्फ़ होस्ट-साइड पर इंटरैक्टिव टेस्ट चलाने हैं, तो होस्ट-साइड टेस्ट चलाना पर जाएं. हालांकि, अगर आपको एक से ज़्यादा डिवाइसों पर टेस्ट करने हैं, तो होस्ट-साइड पर एक से ज़्यादा डिवाइसों पर टेस्ट सेट अप करें पर जाएं.

होस्ट-साइड पर मल्टीडिवाइस टेस्ट सेट अप करना

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

  1. पुष्टि करें कि आपका डेस्कटॉप कंप्यूटर, CTS के लिए ऑपरेटिंग सिस्टम से जुड़ी ज़रूरी शर्तें पूरी करता हो.

  2. डेस्कटॉप सॉफ़्टवेयर इंस्टॉल करना लेख में दिए गए दूसरे और पांचवें चरण को पूरा करें. इससे आपको यह पुष्टि करने में मदद मिलेगी कि आपके डेस्कटॉप पर adb, AAPT2, और Python सही तरीके से इंस्टॉल किए गए हैं.

    • डेस्कटॉप पर Python का वर्शन 3.11 या इसके बाद का होना चाहिए. Python का वर्शन पता करने के लिए, python3 --version चलाएं. अगर वर्शन 3.11 से कम है, तो Python का नया आधिकारिक वर्शन इंस्टॉल करें. ज़्यादा जानकारी के लिए, python.org के डाउनलोड सेक्शन देखें.

      • कुछ टेस्ट के लिए, होस्ट में Python venv मॉड्यूल होना ज़रूरी है. Debian और Ubuntu सिस्टम पर, यह मॉड्यूल डिफ़ॉल्ट रूप से इंस्टॉल नहीं होता. यह पता लगाने के लिए कि डेस्कटॉप Python वर्शन में venv मॉड्यूल है या नहीं, python3 -m venv venv चलाएं. अगर यह कमांड काम नहीं करती है, तो गड़बड़ी का मैसेज दिखता है. python3.x-venv पैकेज इंस्टॉल करने के लिए, दिए गए निर्देश का पालन करें.
  3. मिलते-जुलते दो DUT तैयार करें. दोनों में CTS-V सेट अप होना चाहिए.

    • DUT सेट अप करने के बारे में ज़्यादा जानकारी के लिए, DUT सेट अप करना लेख पढ़ें.
    • CTS-V को सेट अप करने के बारे में ज़्यादा जानने के लिए, सेटअप लेख पढ़ें.
  4. अपने टेस्ट टाइप के सेटअप सेक्शन पर जाएं:

अगर आपका टेस्ट इस सूची में नहीं है, तो दो डिवाइसों पर स्टैंडर्ड टेस्ट सेट अप करें पर जाएं.

एनएफ़सी टेस्ट सेट अप करना

एनएफ़सी टेस्ट में, एक DUT और एक PN532 एनएफ़सी चिप का इस्तेमाल किया जाता है.

एनएफ़सी टेस्ट सेट अप करने के लिए:

  1. PN532 एनएफ़सी चिप खरीदें. हमारा सुझाव है कि आप All-In-One PN532 का इस्तेमाल करें.
  2. DUT पर, Settings ऐप्लिकेशन पर जाएं.
  3. एनएफ़सी चालू करें.
  4. एनएफ़सी चिप को इस तरह रखें:

    • फ़ोन के लिए, डीयूटी के एनएफ़सी रीडर को पहली इमेज में दिखाए गए तरीके से रखें:

      एनएफ़सी चिप की जगह

      पहली इमेज. एनएफ़सी चिप की जगह.

    • अन्य डिवाइस टाइप के लिए, चिप को डिवाइस के एनएफ़सी ऐंटीना के बगल में रखें.

  5. यूएसबी केबल का इस्तेमाल करके, PN532 एनएफ़सी चिप को अपने टेस्टिंग वर्कस्टेशन से अटैच करें.

वाई-फ़ाई एपी कनेक्शन टेस्ट सेट अप करना

वाई-फ़ाई ऐक्सेस पॉइंट (एपी) कनेक्शन टेस्ट (CtsWifiConnectionTests) से, DUT और एपी के बीच कनेक्टिविटी की जांच की जाती है. इन टेस्ट को यहां दिए गए दो तरीकों से सेट अप किया जा सकता है:

  • पहला विकल्प: CTS-V के लिए सेट अप किए गए किसी मौजूदा वाई-फ़ाई नेटवर्क का इस्तेमाल करें.
  • दूसरा विकल्प: प्रोग्राम किया जा सकने वाला ऐक्सेस पॉइंट (एपी) सेट अप करें.

Android 17 के लिए, हमारा सुझाव है कि आप दूसरा विकल्प चुनें. हालांकि, ऐसा करना ज़रूरी नहीं है. यहां दिए गए दो सेक्शन में, हर विकल्प के बारे में बताया गया है.

पहला विकल्प: CTS-V के लिए सेट अप किए गए किसी मौजूदा वाई-फ़ाई नेटवर्क का इस्तेमाल करना

पहले विकल्प के लिए, वाई-फ़ाई नेटवर्क कवरेज एरिया में एक Android DUT होना ज़रूरी है. अगर DUT शील्ड बॉक्स में है और वाई-फ़ाई नेटवर्क से कनेक्ट नहीं हो पा रहा है, तो उसे शील्ड बॉक्स से हटा दें.

दूसरा विकल्प: प्रोग्राम किया जा सकने वाला एपी सेट अप करना

वाई-फ़ाई कनेक्शन की जांच के लिए, प्रोग्राम किया जा सकने वाला एपी सेट अप करने के लिए:

  1. Banana Pi R3 AP खरीदें और उसे सेट अप करें. Banana Pi R3 AP खरीदने और उसे सेट अप करने के बारे में जानकारी के लिए, Banana Pi BPI-R3 AP सेट अप करना लेख पढ़ें.

  2. (ज़रूरी नहीं) अगर आपके पास शील्ड बॉक्स नहीं है, तो हमारा सुझाव है कि आप JTP-SR101 शील्ड बॉक्स का इस्तेमाल करें. इस बॉक्स को खरीदने के लिए, यहां दी गई जानकारी का इस्तेमाल करें:

    Dong Guan Zheng Sheng Electronics Technology Co., एलटीडी

    बोहुई इंडस्ट्रियल पार्क, पैनलॉन्ग रोड, लियाओबू टाउन, डोंगगुआन सिटी, गुआंगडोंग प्रांत, चीन

    संपर्क: फ़ॉरेस्ट पैन

    ईमेल: forest.pan@jtpmak.cn

    फ़ोन (चीन): +86 18676993556

  3. DUT और AP को होस्ट से कनेक्ट करें और उन्हें आरएफ़ शील्ड बॉक्स में रखें. DUT और AP के बीच कम से कम 10 cm की दूरी होनी चाहिए. दूसरी इमेज में यह कॉन्फ़िगरेशन दिखाया गया है:

    शील्ड बॉक्स में DUT और AP

    दूसरी इमेज. शील्ड बॉक्स में DUT और AP.

  4. एसएसएच का इस्तेमाल करके, यह पुष्टि करें कि होस्ट से एपी को ऐक्सेस किया जा सकता है.

रेंजिंग की सटीक जानकारी की जांच करने की सुविधा सेट अप करना

रेंजिंग की सटीक जानकारी के टेस्ट सेट अप करने के लिए:

  1. एक जैसे दो Android DUT को एक मीटर की दूरी पर, एक ही ऊंचाई पर रखें. साथ ही, उन्हें इस तरह रखें कि वे एक-दूसरे के सामने हों और उनके पीछे के हिस्से एक-दूसरे की ओर हों. तीसरी इमेज में यह ओरिएंटेशन दिखाया गया है:

    डिवाइस की स्क्रीन की दिशा

    तीसरी इमेज. डिवाइस का ओरिएंटेशन.

  2. दोनों डिवाइसों को यूएसबी केबल की मदद से, डेस्कटॉप मशीन से कनेक्ट करें.

दो डिवाइसों पर स्टैंडर्ड टेस्ट सेट अप करना

दो डिवाइसों के डिफ़ॉल्ट सेटअप के लिए:

  1. एक जैसे दो Android DUT को करीब 20 सें॰मी॰ की दूरी पर रखें.

  2. हमारा सुझाव है: दोनों डिवाइसों को शील्ड बॉक्स में रखें. शील्ड बॉक्स, टेस्ट की स्थिरता को बेहतर बनाता है. साथ ही, टेस्ट के फ़ेल होने पर डीबग करना आसान हो जाता है.

  3. टेलीकॉम टेस्ट के लिए, हर DUT में सिम कार्ड और सेल्युलर सिग्नल होना चाहिए. अगर डीयूटी शील्ड बॉक्स में हैं, तो बॉक्स में सेल्युलर सिग्नल को जोड़ना होगा. अगर ऐसा नहीं होता है, तो डिवाइसों को शील्ड बॉक्स से बाहर निकालें.

  4. ज़रूरी नहीं: वाई-फ़ाई डीबग करने के लिए, OTA स्निफ़र सेट अप करें.

सीडीएम टेस्ट सेट अप करना

test_permissions_sync टेस्ट केस का व्यवहार अलग-अलग होता है. यह इस बात पर निर्भर करता है कि टेस्ट को किन डिवाइसों पर चलाया जा रहा है और उन डिवाइसों का बिल्ड का तरीका क्या है. यह ज़रूरी है कि ओईएम, डीबग किए जा सकने वाले (userdebug या eng) और डीबग नहीं किए जा सकने वाले (user) दोनों बिल्ड की जांच करें. साथ ही, यह भी ज़रूरी है कि दोनों बिल्ड के लिए टेस्ट पास हो जाएं.

छूट

अनुमतियों को सिंक करने वाले एपीआई को लागू करने के लिए, सीडीडी क्लॉज़ के तहत सिर्फ़ यह ज़रूरी है कि वह सुरक्षित चैनल के ज़रिए, डिवाइसों के बीच डेटा को ट्रांसफ़र कर सके. सुरक्षित चैनल को लागू करना, सीडीडी के पालन की ज़रूरी शर्त नहीं है. इसलिए, डीबग नहीं की जा सकने वाली (उपयोगकर्ता) बिल्ड पर इस टेस्ट को स्किप किया जा सकता है. हालांकि, ऐसा सिर्फ़ तब किया जा सकता है, जब आपको सीडीएम की अनुमतियों को सिंक करने की सुविधा से ऑप्ट आउट करना हो.

डीबग की जा सकने वाली बिल्ड पर, सभी टेस्ट पास होने चाहिए.

डीबग नहीं की जा सकने वाली बिल्ड पर टेस्टिंग के लिए ज़रूरी शर्तें

अगर आपको छूट नहीं मिली है, तो पुष्टि करें कि आपने इन ज़रूरी शर्तों को पूरा किया हो.

सुरक्षित चैनल, हार्डवेयर की भरोसेमंद होने की पुष्टि करने के लिए एवीएफ़ (AttestationVerificationFramework) का इस्तेमाल करता है. दोनों पक्षों की ओर से जनरेट किए गए कानूनी दस्तावेज़ों में, उनके बारे में कई तरह की जानकारी शामिल होती है. इससे यह पुष्टि की जा सकती है कि उनके सिस्टम में बिना अनुमति के कोई बदलाव नहीं किया गया है. पुष्टि की प्रोसेस के दौरान, AVF इन स्थितियों की जांच करता है:

  • डिवाइस में इंटरनेट का ऐक्सेस हो

  • डिवाइस में पुष्टि किए गए बूट का इस्तेमाल किया जाता है और बिल्ड को रिलीज़-की (डेवलपर-की नहीं) से साइन किया जाता है

  • डिवाइस का बूटलोडर लॉक है. ज़्यादा जानकारी के लिए, बूटलोडर लॉक करना लेख पढ़ें.

  • ओएस, मुख्य बूट, और मुख्य वेंडर पैच लेवल 12 महीनों के अंदर के हों. एक साल से पुराने बिल्ड का इस्तेमाल न करें.

  • डिवाइस की पुष्टि, वेंडर से मंज़ूरी पाए रूट सर्टिफ़िकेट में से किसी एक के ज़रिए की जाती है. vendor_required_attestation_certificates.xml रिसॉर्स ओवरले में, भरोसेमंद रूट सर्टिफ़िकेट के बारे में बताएं.

होस्ट-साइड पर टेस्ट चलाना

एक से ज़्यादा डिवाइसों पर किए जाने वाले कुछ टेस्ट, जैसे कि एनएफ़सी टेस्ट के लिए अतिरिक्त सेटअप की ज़रूरत होती है. जिन टेस्ट के लिए अतिरिक्त सेटअप की ज़रूरत होती है उन्हें अलग-अलग चलाया जाता है. जिन टेस्ट के लिए अतिरिक्त सेटअप की ज़रूरत नहीं होती उन्हें एक ग्रुप में चलाया जा सकता है.

  1. अपने टेस्ट वर्कस्टेशन पर, उस डायरेक्ट्री से cts-v-host कंसोल लॉन्च करें जहां CTS-V ज़िप पैकेज को अनज़िप किया गया था:

    ./android-cts-verifier/android-cts-v-host/tools/cts-v-host-tradefed
    
  2. DUT पर मौजूद CTS-V ऐप्लिकेशन में जाकर, Host-side Tests पर क्लिक करें. चौथी इमेज में, CTS-V ऐप्लिकेशन में होस्ट-साइड टेस्ट दिखाए गए हैं:

    CTS-V ऐप्लिकेशन में होस्ट-साइड टेस्ट

    चौथी इमेज. CTS-V ऐप्लिकेशन में होस्ट-साइड टेस्ट.

    होस्ट-साइड मल्टीडिवाइस टेस्ट मॉड्यूल की सूची दिखती है.

  3. CTS-V होस्ट कंसोल में, एक से ज़्यादा डिवाइसों पर टेस्ट चलाने के लिए यहां दिया गया निर्देश इस्तेमाल करें. इन टेस्ट में, दो डिवाइसों का स्टैंडर्ड सेटअप इस्तेमाल किया जाता है:

    run cts-v-host-multidevice-default
    

    नतीजे, DUT पर CTS-V ऐप्लिकेशन में हर टेस्ट मॉड्यूल के नीचे दिखते हैं. हरे रंग से मार्क किए गए टेस्ट पास हो गए हैं और लाल रंग से मार्क किए गए टेस्ट फ़ेल हो गए हैं.

    पांचवें फ़िगर में, CtsCompanionDeviceManager टेस्ट के नतीजों का उदाहरण दिखाया गया है:

    CTS-V ऐप्लिकेशन में, होस्ट-साइड पर एक से ज़्यादा डिवाइसों पर किए गए टेस्ट के नतीजे

    पांचवीं इमेज. CTS-V ऐप्लिकेशन में, होस्ट-साइड पर एक से ज़्यादा डिवाइसों पर किए गए टेस्ट के नतीजे.

  4. CTS-V की होस्ट कंसोल में, इंटरैक्टिव टेस्ट चलाने के लिए, यहां दिया गया निर्देश इस्तेमाल करें:

    run cts-v-host-interactive
    

    नतीजे, DUT पर CTS-V ऐप्लिकेशन में हर टेस्ट मॉड्यूल के नीचे दिखते हैं. हरे रंग से मार्क किए गए टेस्ट पास हो गए हैं और लाल रंग से मार्क किए गए टेस्ट फ़ेल हो गए हैं.

  5. जिन टेस्ट के लिए अतिरिक्त सेटअप की ज़रूरत थी उन्हें अलग-अलग चलाने के लिए, यहां दिए गए कमांड का इस्तेमाल करें:

    run cts-v-host -m test_module_name
    

    उदाहरण के लिए, एनएफ़सी की जांच करने के लिए, इस निर्देश का इस्तेमाल करें:

    run cts-v-host -m CtsNfcHceMultiDeviceTestCases
    

    नतीजे, DUT पर CTS-V ऐप्लिकेशन में हर टेस्ट मॉड्यूल के नीचे दिखते हैं. हरे रंग से मार्क किए गए टेस्ट पास हो गए हैं और लाल रंग से मार्क किए गए टेस्ट फ़ेल हो गए हैं.

वाई-फ़ाई एपी कनेक्शन की जांच करना

वाई-फ़ाई एपी कनेक्शन की जांच इन दो तरीकों से की जा सकती है:

  • पहला विकल्प: CTS-V के लिए सेट अप किए गए किसी मौजूदा वाई-फ़ाई नेटवर्क का इस्तेमाल करें.
  • दूसरा विकल्प: प्रोग्राम किया जा सकने वाला एपी सेट अप करें.

पहला विकल्प: CTS-V के लिए सेट अप किए गए किसी मौजूदा वाई-फ़ाई नेटवर्क का इस्तेमाल करना

किसी मौजूदा वाई-फ़ाई नेटवर्क पर, वाई-फ़ाई एपी कनेक्शन की जांच करने के लिए:

  1. टेस्टबेड कॉन्फ़िगरेशन फ़ाइल (WifiConnectionTestbed.yaml) में बदलाव करें. यह फ़ाइल उस डायरेक्ट्री में होती है जहां CTS-Verifier को अनज़िप किया गया है. उदाहरण के लिए:

    ./android-cts-verifier/android-cts-v-host/testcases/CtsWifiConnectionTests/x86_64/connection/WifiConnectionTestbed.yaml
    
  2. wifi_ssid और wifi_password फ़ील्ड की वैल्यू को वाई-फ़ाई नेटवर्क के एसएसआईडी और पासवर्ड में बदलें. नीचे दिए गए उदाहरण में, इन सेटिंग की जगह दिखाई गई है:

    TestBeds:
    -   Name: WifiConnectionTestbed
    Controllers:
      AndroidDevice: '*'
    TestParams:
      use_programmable_ap: False
      wifi_ssid: WIFI-SSID
      wifi_password: WIFI-PASSWORD
    
  3. CTS-V होस्ट कंसोल में, यह कमांड चलाएं:

    run cts-v-host -m CtsWifiConnectionTests
    

दूसरा विकल्प: प्रोग्राम किए जा सकने वाले एपी के साथ चलाना

प्रोग्राम किए जा सकने वाले एपी पर, वाई-फ़ाई एपी कनेक्शन की जांच करने के लिए:

  1. टेस्टबेड कॉन्फ़िगरेशन फ़ाइल (WifiConnectionTestbed.yaml) में बदलाव करें. यह फ़ाइल उस डायरेक्ट्री में होती है जहां CTS-Verifier को अनज़िप किया गया है. उदाहरण के लिए:

    ./android-cts-verifier/android-cts-v-host/testcases/CtsWifiConnectionTests/x86_64/connection/WifiConnectionTestbed.yaml
    
  2. अपनी लोकल एसएसएच सेटिंग के आधार पर, hostname की वैल्यू को एपी के आईपी पते में बदलें. आईपी पते की पहचान करने के लिए, एपी का आईपी पता ढूंढना लेख पढ़ें. यहां दिए गए उदाहरण में, hostname सेटिंग की जगह दिखाई गई है:

    TestBeds:
    -   Name: WifiConnectionTestbed
      Controllers:
        AndroidDevice: '*'
        # Specify settings for the AP.
        OpenWrtDevice:
        -   hostname: AP-IP
          skip_init_reboot: True
      TestParams:
        use_programmable_ap: True
    
  3. CTS-V होस्ट कंसोल में, यह कमांड चलाएं:

    run cts-v-host -m CtsWifiConnectionTests
    

यूएसबी के होस्ट-साइड टेस्ट चलाना

Android 17 में, यूएसबी सीटीएस-वी होस्ट-साइड टेस्ट शामिल हैं. इन्हें चलाने के लिए, adb से कनेक्ट करना ज़रूरी है.

कुछ यूएसबी टेस्ट के लिए, CTS-V होस्ट का इस्तेमाल करना ज़रूरी होता है. इससे उन SystemAPI को ऐक्सेस किया जा सकता है जिनके पास ऐसी अनुमतियां होती हैं जिन्हें सामान्य CTS-V ऐप्लिकेशन ऐक्सेस नहीं कर सकता. ये टेस्ट, बिना किसी केबल के किए जाते हैं. इनके लिए, वाई-फ़ाई पर adb का इस्तेमाल करना ज़रूरी है.

अगर DUT, UsbPort.java में पोर्ट पार्टनर BC 1.2 टाइप या यूएसबी पावर प्रोफ़ाइल की रिपोर्टिंग की सुविधा देता है, तो टाइप-सी की इन ऐक्सेसरी की ज़रूरत होती है:

  • यूएसबी टाइप-सी पावर डिलीवरी (पीडी) चार्जर
  • यूएसबी बैटरी चार्जिंग 1.2 (बीसी 1.2) स्टैंडर्ड डाउनस्ट्रीम पोर्ट (एसडीपी). ये पोर्ट, डीयूटी को सिर्फ़ 500 mA या 900 mA की पावर देते हैं. ये आम तौर पर, बाहरी हब के यूएसबी पोर्ट पर मिलते हैं.
  • यूएसबी बीसी 1.2 चार्जिंग डाउनस्ट्रीम पोर्ट (सीडीपी). ये पोर्ट, DUT और डेटा को 1.5 A का करंट दे सकते हैं. लैपटॉप या कंप्यूटर पर मौजूद टाइप-सी पोर्ट, सीडीपी हो सकता है.
  • यूएसबी बीसी 1.2 का डीसीपी (डेडिकेटेड चार्जिंग पोर्ट). ये पोर्ट, डेटा के बिना DUT को 1.5 A का करंट दे सकते हैं. इस सूची में मौजूद यूएसबी टाइप-सी पीडी चार्जर, डीसीपी हो सकता है.
  1. वाई-फ़ाई पर adb का इस्तेमाल करके, DUT को कनेक्ट करें. सेटअप के बारे में ज़्यादा जानकारी के लिए, वाई-फ़ाई के ज़रिए किसी डिवाइस से कनेक्ट करना लेख पढ़ें.

  2. डिवाइस को सभी यूएसबी कनेक्शन से अलग करें. अगर टेस्ट कमांड चलाने के दौरान डिवाइस किसी यूएसबी होस्ट या ऐक्सेसरी से जुड़ा होता है, तो टेस्ट पूरा नहीं हो पाता.

  3. जांच करने के लिए यह कमांड चलाएं:

    run cts-v-host -m CtsUsbTypecTestCases
    

जांच के बाद, नतीजे CTS-V ऐप्लिकेशन में होस्ट-साइड टेस्ट में दिखते हैं. इन्हें यहां दिए गए डायग्राम में दिखाया गया है:

CTS-V ऐप्लिकेशन में होस्ट-साइड पर यूएसबी टेस्ट

छठी इमेज. सीटीएस-वी ऐप्लिकेशन में होस्ट-साइड यूएसबी टेस्ट.

होस्ट-साइड यूएसबी सीटीएस-वी
ऐप्लिकेशन में CtsUsbTypecTestCases सुइट

सातवीं इमेज. होस्ट-साइड यूएसबी सीटीएस-वी ऐप्लिकेशन में CtsUsbTypecTestCases सुइट.

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

इस सेक्शन में, आम तौर पर होने वाली समस्याओं को हल करने का तरीका बताया गया है.

CtsTelecomTest के दौरान फ़ोन नंबर नहीं मिला

अगर आपको गड़बड़ी का यह मैसेज Failed to get phone number for <serial> मिलता है, तो यह तरीका अपनाएं:

  1. पुष्टि करें कि हर DUT में सिम कार्ड इंस्टॉल किया गया हो.

  2. अगर गड़बड़ी बनी रहती है, तो हो सकता है कि सिम कार्ड में, नंबर अपने-आप पाने की सुविधा काम न करे. ऐसे में, आपको कमांड में फ़ोन नंबर साफ़ तौर पर देने होंगे.

    उदाहरण के लिए, DUT 1 (सीरियल 17011FDEE0002N, फ़ोन नंबर 555-0000) और DUT 2 (सीरियल R3CN90YNAR, फ़ोन नंबर 555-1111) के लिए, run cts-v-host कमांड में ये आर्ग्युमेंट जोड़ें:

    --module-arg CtsTelecomTest:dut_serial:17011FDEE0002N \
    --module-arg CtsTelecomTest:dut_phone_number:555-0000 \
    --module-arg CtsTelecomTest:ref_phone_number:555-1111
    

CtsMultiDeviceGenericRangingAccuracyTests के दौरान सर्वर से कोई जवाब नहीं मिला

अगर आपको गड़बड़ी का यह मैसेज मिलता है, तो हो सकता है कि कुछ डिवाइसों पर ओईएम के हिसाब से बैकग्राउंड प्रोसेस मैनेज करने की सुविधा की वजह से, टेस्ट ऐप्लिकेशन बंद हो जाए या काम न करे:

mobly.snippet.errors.ProtocolError: <AndroidDevice|Initiator> No response from server. Check the device logcat for crashes.

इस समस्या को हल करने के लिए, बैकग्राउंड में ऐप्लिकेशन के काम करने पर लगी पाबंदियां हटाएं या इन पैकेज को अनुमति दें:

पैकेज प्रदर्शन नाम
com.google.snippet.uwb CtsUwbSnippetApp
com.google.snippet.ranging CtsRangingSnippetApp
com.google.snippet.bluetooth CtsBluetoothMultiDeviceSnippetApp
com.google.android.mobly.snippet.bundled androidx.multidex.MultDexApplication

एनएफ़सी टेस्ट के दौरान, GetFirmwareVersion के लिए कोई जवाब नहीं मिलने की समस्या ठीक की गई

अगर आपको एक से ज़्यादा डिवाइसों पर टेस्ट चलाते समय verify_firmware_version RuntimeError: No response for GetFirmwareVersion मैसेज मिलता है, तो इसका मतलब है कि टेस्ट, PN532 NFC बोर्ड को ऐक्सेस नहीं कर सकते.

इस समस्या को ठीक करने के लिए, अपने होस्ट डिवाइस पर PN532 NFC बोर्ड के इस्तेमाल किए गए सीरियल पाथ की पहचान करें. जैसे, dev/ttyUSB1. इसके बाद, कंसोल में --module-arg आर्ग्युमेंट का इस्तेमाल करके, इसे मैन्युअल तरीके से सेट करें:

run cts-v-host -m CtsNfcHceMultiDeviceTestCases --module-arg CtsNfcHceMultiDeviceTestCases:pn532_serial_path:/dev/ttyUSB1

एनएफ़सी टेस्ट के दौरान, लेन-देन पूरा नहीं किया जा सका गड़बड़ी के मैसेज को ठीक करना

अगर आपको सभी एनएफ़सी टेस्ट केस के लिए Transaction failed, check device logs for more information. मैसेज मिलता है, तो ऐसा इसलिए हो सकता है, क्योंकि DUT का एनएफ़सी चिप, PN532 का पता नहीं लगा पा रहा है.

अगर आपने होस्ट से कई डिवाइस कनेक्ट किए हैं और उनमें से कुछ पर PN532 नहीं है, तो हो सकता है कि गलत DUT चुना गया हो. ज़्यादा जानकारी के लिए, एनएफ़सी टेस्ट सेट अप करना लेख पढ़ें.

इस समस्या को ठीक करने के लिए, इनमें से कोई एक तरीका अपनाएं:

  • -s फ़्लैग का इस्तेमाल करके, होस्ट-साइड टेस्ट कमांड में DUT का सही सीरियल सेट करें.

  • होस्ट से, DUT के अलावा अन्य सभी डिवाइसों को डिसकनेक्ट करें.

सीडीएम टेस्ट केस test_permissions_sync को अनदेखा किया जाता है

अगर जांच ऐसे डिवाइसों पर की जा रही है जिन पर डीबग नहीं किया जा सकता, तो देखें कि आपको छूट मिली है या नहीं. अगर ऐसा नहीं होता है, तो पुष्टि करें कि दोनों डिवाइस ज़रूरी शर्तें पूरी करते हों.