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