इस पेज पर, Android 16 और इसके बाद के वर्शन के लिए, CTS Verifier (CTS-V) के मल्टीडिवाइस टेस्ट इस्तेमाल करने के निर्देश दिए गए हैं.
होस्ट-साइड पर एक से ज़्यादा डिवाइसों पर टेस्ट सेट अप करना
इस सेक्शन में, एक से ज़्यादा डिवाइसों पर टेस्ट सेट अप करने का तरीका बताया गया है.
- पक्का करें कि आपका डेस्कटॉप कंप्यूटर, CTS के लिए ऑपरेटिंग सिस्टम से जुड़ी ज़रूरी शर्तें पूरी करता हो.
- डेस्कटॉप सॉफ़्टवेयर इंस्टॉल करें लेख में दिए गए दूसरे और पांचवें चरण को पूरा करें. इससे यह पक्का किया जा सकेगा कि आपके डेस्कटॉप पर adb, AAPT2, और Python सही तरीके से इंस्टॉल किए गए हैं.
टेस्ट किए जाने वाले दो डिवाइस (डीयूटी) तैयार करें. दोनों पर सीटीएस-वी सेट अप होना चाहिए.
- DUT सेट अप करने के बारे में जानकारी के लिए, DUT सेट अप करना लेख पढ़ें.
- सीटीएस-वी को सेट अप करने के निर्देशों के लिए, सेटअप लेख पढ़ें.
अगर आपको एनएफ़सी के अलावा किसी अन्य मॉड्यूल की टेस्टिंग करनी है, तो दो डिवाइसों के बीच स्टैंडर्ड टेस्ट सेट अप करें लेख पढ़ें.
- एनएफ़सी टेस्ट के लिए, एनएफ़सी टेस्ट सेट अप करें लेख पढ़ें.
अगर आपको सीडीएम मॉड्यूल की जांच करनी है, तो दो डिवाइसों के स्टैंडर्ड सेटअप के साथ-साथ, सीडीएम टेस्ट सेट अप करें में दिए गए निर्देशों का पालन करें.
दो डिवाइसों पर स्टैंडर्ड टेस्ट सेट अप करना
दो डिवाइसों के डिफ़ॉल्ट सेटअप के लिए:
- एक जैसे दो Android DUT को एक-दूसरे से करीब 20 से॰मी॰ की दूरी पर रखें.
साफ़-सुथरा एनवायरमेंट बनाए रखने के लिए, दोनों डिवाइसों को शील्ड बॉक्स में रखें.
(ज़रूरी नहीं) वाई-फ़ाई डीबग करने के लिए, OTA स्निफ़र सेट अप करें.
एनएफ़सी टेस्ट सेट अप करना
एनएफ़सी टेस्ट में, एक DUT और PN532 एनएफ़सी चिप का इस्तेमाल किया जाता है.
एनएफ़सी टेस्ट सेट अप करने के लिए:
- PN532 एनएफ़सी चिप खरीदें. हमारा सुझाव है कि आप All-In-One PN532 का इस्तेमाल करें.
DUT पर, Settings ऐप्लिकेशन पर जाएं.
एनएफ़सी चालू करें.
एनएफ़सी चिप को इस तरह रखें:
फ़ोन के लिए, DUT के NFC रीडर को पहली इमेज में दिखाए गए तरीके से रखें:
पहली इमेज. एनएफ़सी चिप की जगह.
अन्य डिवाइसों के लिए, चिप को डिवाइस के एनएफ़सी ऐंटीना के बगल में रखें.
यूएसबी केबल का इस्तेमाल करके, PN532 एनएफ़सी चिप को अपने टेस्टिंग वर्कस्टेशन से अटैच करें.
सीडीएम टेस्ट सेट अप करना
test_permissions_sync()
टेस्ट केस का व्यवहार अलग-अलग होता है. यह इस बात पर निर्भर करता है कि टेस्ट को किन डिवाइसों पर चलाया जा रहा है. यह ज़रूरी है कि ओईएम, डीबग किए जा सकने वाले (userdebug या eng) और डीबग न किए जा सकने वाले (user) दोनों बिल्ड की जांच करें. साथ ही, यह भी ज़रूरी है कि दोनों बिल्ड के लिए टेस्ट पास हो जाएं.
छूट
अनुमतियों को सिंक करने वाले एपीआई को लागू करने के लिए, सीडीडी क्लॉज़ के तहत सिर्फ़ यह ज़रूरी है कि वह सुरक्षित चैनल के ज़रिए, डिवाइसों के बीच डेटा को ट्रांसफ़र कर सके. सुरक्षित चैनल को लागू करना, सीडीडी के पालन की ज़रूरी शर्त नहीं है. इसलिए, इस टेस्ट को डीबग नहीं की जा सकने वाली (उपयोगकर्ता) बिल्ड पर स्किप किया जा सकता है. हालांकि, ऐसा सिर्फ़ तब किया जा सकता है, जब आपको सीडीएम की अनुमतियों को सिंक करने की सुविधा से ऑप्ट आउट करना हो.
डीबग की जा सकने वाली बिल्ड पर, सभी टेस्ट पास होने चाहिए.
डीबग नहीं की जा सकने वाली बिल्ड पर टेस्टिंग के लिए ज़रूरी शर्तें
अगर आपको पिछले छूट वाले क्लॉज़ के तहत छूट नहीं मिली है, तो पक्का करें कि ये ज़रूरी शर्तें पूरी हों.
सुरक्षित चैनल, हार्डवेयर की भरोसेमंद होने की पुष्टि करने के लिए AVF (AttestationVerificationFramework
) का इस्तेमाल करता है. दोनों पक्षों से जनरेट किए गए अटेस्टेशन में, उनके बारे में कई तरह की जानकारी शामिल होती है. इससे यह पक्का किया जा सकता है कि उनके सिस्टम में बिना अनुमति के कोई बदलाव नहीं किया गया है. पुष्टि की प्रोसेस के दौरान, AVF इन स्थितियों की जांच करता है:
- डिवाइस में इंटरनेट का ऐक्सेस हो
- डिवाइस में पुष्टि किए गए बूट का इस्तेमाल किया जाता है. साथ ही, बिल्ड को रिलीज़-की से साइन किया जाना चाहिए, न कि देव-की से
- डिवाइस का बूटलोडर लॉक है. ज़्यादा जानकारी के लिए, बूटलोडर लॉक करना लेख पढ़ें
- ओएस, की बूट, और की वेंडर पैच लेवल 12 महीनों के अंदर के होने चाहिए. एक साल से पुराने बिल्ड का इस्तेमाल न करें
डिवाइस की पुष्टि, वेंडर से मंज़ूरी पाए रूट सर्टिफ़िकेट में से किसी एक के ज़रिए की जाती है.
vendor_required_attestation_certificates.xml
रिसॉर्स ओवरले में, अपने भरोसेमंद रूट सर्टिफ़िकेट के बारे में बताएं.
होस्ट-साइड पर एक से ज़्यादा डिवाइसों पर टेस्ट चलाना (AOSP 16 या इसके बाद का वर्शन)
CTS Verifier 16 में, होस्ट-साइड मल्टीडिवाइस टेस्ट के लिए सहायता जोड़ी गई है. इन जांचों को डिवाइस पर मैन्युअल तरीके से करने के बजाय, होस्ट पर ऑटोमेटेड स्क्रिप्ट का इस्तेमाल करके किया जा सकता है. हर जांच पूरी होने के बाद, नतीजे DUT पर अपने-आप अपलोड हो जाते हैं. साथ ही, ये नतीजे CTS Verifier ऐप्लिकेशन में दिखते हैं.
इस सेक्शन में, होस्ट-साइड पर मल्टीडिवाइस टेस्ट चलाने का तरीका बताया गया है.
एक से ज़्यादा डिवाइसों पर टेस्ट चलाना
एक से ज़्यादा डिवाइसों पर टेस्ट चलाने के लिए:
अपने टेस्ट वर्कस्टेशन पर, उस डायरेक्ट्री से
cts-v-host
कंसोल लॉन्च करें जहां CTS-V ज़िप पैकेज को अनज़िप किया गया था:./android-cts-verifier/android-cts-v-host/tools/cts-v-host-tradefed
DUT पर CTS Verifier ऐप्लिकेशन में जाकर, होस्ट-साइड टेस्ट पर क्लिक करें. दूसरी इमेज में, CTS Verifier ऐप्लिकेशन में होस्ट-साइड टेस्ट दिखाए गए हैं:
दूसरी इमेज. CTS Verifier ऐप्लिकेशन में, होस्ट-साइड मल्टीडिवाइस टेस्ट.
टेस्ट होस्ट-साइड मल्टीडिवाइस टेस्ट मॉड्यूल की सूची दिखती है.
उस टेस्ट मॉड्यूल का नाम पता करें जिसे आपको चलाना है. उदाहरण के लिए, CompanionDeviceManager मॉड्यूल को CtsCompanionDeviceManagerMultiDeviceTestCases के तौर पर लिस्ट किया गया है.
cts-v-host कंसोल में, यह कमांड चलाएं:
run cts-v-host -m test_module_name
उदाहरण के लिए:
run cts-v-host -m CtsCompanionDeviceManagerMultiDeviceTestCases
xTS कंसोल में टेस्ट पूरे होने के बाद, नतीजे CTS Verifier ऐप्लिकेशन में दिखते हैं. हरे रंग से मार्क किए गए टेस्ट पास हो गए हैं. लाल रंग से मार्क की गई जांचें पूरी नहीं हो सकीं. तीसरी इमेज में, CtsCompanionDeviceManager टेस्ट के नतीजों का उदाहरण दिखाया गया है:
तीसरी इमेज. CTS Verifier ऐप्लिकेशन में, होस्ट-साइड मल्टीडिवाइस टेस्ट के नतीजे.
एक से ज़्यादा डिवाइसों पर किए जाने वाले टेस्ट से जुड़ी समस्याएं हल करना
इस सेक्शन में, संभावित समस्याओं को हल करने के बारे में बताया गया है.
एनएफ़सी टेस्ट के दौरान, 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
को अनदेखा किया गया
अगर टेस्ट, ऐसे डिवाइसों पर चलाया जा रहा है जिन पर डीबग नहीं किया जा सकता, तो देखें कि आपको छूट मिली है या नहीं. अगर ऐसा नहीं है, तो पक्का करें कि दोनों डिवाइस ज़रूरी शर्तें पूरी करते हों.