CTS Verifier হোস্ট-সাইড টেস্ট রান করা

এই পৃষ্ঠায় 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. আপনার টেস্টের ধরন অনুযায়ী সেট-আপ বিভাগে যান:

আপনার টেস্ট এই তালিকায় না থাকলে, স্ট্যান্ডার্ড দুই-ডিভাইস টেস্ট সেট-আপ করুন বিকল্পে যান।

NFC টেস্ট সেট-আপ করুন

NFC টেস্টে একটি DUT ও একটি PN532 NFC চিপ ব্যবহার করা হয়।

NFC টেস্ট সেট-আপ করতে:

  1. একটি PN532 NFC চিপ কিনুন। আমরা All-In-One PN532 সাজেস্ট করি।
  2. DUT-তে, সেটিংস অ্যাপে নেভিগেট করুন।
  3. NFC চালু করুন।
  4. NFC চিপের পজিশন:

    • ফোনের ক্ষেত্রে, DUT-এর NFC রিডারকে ছবি ১-এ দেখানো পজিশনে রাখুন:

      NFC চিপের পজিশন

      ছবি ১. NFC চিপের পজিশন।

    • অন্য ধরনের ডিভাইসের ক্ষেত্রে, ডিভাইসের NFC অ্যান্টেনার পাশে চিপটি রাখুন।

  5. USB কেবেল ব্যবহার করে আপনার টেস্টিং ওয়ার্কস্টেশনে PN532 NFC চিপ অ্যাটাচ করুন।

ওয়াই-ফাই AP কানেকশন টেস্ট সেট-আপ করুন

ওয়াই-ফাই অ্যাক্সেস পয়েন্ট (AP) কানেকশন টেস্ট (CtsWifiConnectionTests) DUT ও AP-এর মধ্যে কানেক্টিভিটি টেস্ট করে। আপনি নিম্নলিখিত দুটি উপায়ে এই পরীক্ষাগুলি সেট-আপ করতে পারেন:

  • বিকল্প ১: CTS-V-এর জন্য সেট-আপ করা আগে থেকে থাকা ওয়াই-ফাই নেটওয়ার্ক ব্যবহার করুন।
  • বিকল্প ২: একটি প্রোগ্রামেবল অ্যাক্সেস পয়েন্ট (AP) সেট-আপ করুন।

Android 17-এর জন্য, আমরা ২ নম্বর বিকল্পটি ব্যবহার করার জন্য বিশেষভাবে সাজেস্ট করি, তবে এটি বাধ্যতামূলক নয়। নিচে দেওয়া দুটি বিভাগে প্রতিটি বিকল্পের ব্যাপারে ব্যাখ্যা করা হয়েছে।

বিকল্প ১: CTS-V-এর জন্য সেট-আপ করা আগে থেকে থাকা ওয়াই-ফাই নেটওয়ার্ক ব্যবহার করুন

বিকল্প ১-এর জন্য ওয়াই-ফাই নেটওয়ার্ক কভারেজ এরিয়ার মধ্যে একটি Android DUT থাকতে হবে। DUT যদি শিল্ড বক্সে থাকে এবং ওয়াই-ফাই নেটওয়ার্কে কানেক্ট করতে না পারে, তাহলে শিল্ড বক্স থেকে এটি সরিয়ে দিন।

বিকল্প ২: প্রোগ্রামেবল AP সেট-আপ করা

ওয়াই-ফাই কানেকশন টেস্ট করার জন্য প্রোগ্রামেবল AP সেট-আপ করতে:

  1. Banana Pi R3 AP কিনে সেট-আপ করুন। Banana Pi R3 AP কেনা ও সেট-আপ করা সম্পর্কে আরও জানতে, Banana Pi BPI-R3 AP সেট-আপ করুন লিঙ্ক দেখুন।

  2. (ঐচ্ছিক) আপনার কাছে শিল্ড বক্স না থাকলে, আমরা JTP-SR101 শিল্ড বক্স ব্যবহার করার সাজেশন দিই। নিম্নলিখিত তথ্য ব্যবহার করে এই বক্স কিনুন:

    Dong Guan Zheng Sheng Electronics Technology Co., LTD

    Bohui Industrial Park, Panlong Road, Liaobu Town, Dongguan City, Guangdong Province, China

    যোগাযোগ: Forest Pan

    ইমেল: forest.pan@jtpmak.cn

    ফোন (চীন): +৮৬ ১৮৬৭৬৯৯৩৫৫৬

  3. হোস্টের সাথে DUT ও AP কানেক্ট করুন এবং RF শিল্ড বক্সে রাখুন। DUT ও AP-এর মধ্যে অন্তত ১০ সেমি দূরত্ব থাকতে হবে। ছবি ২-এ এই কনফিগারেশন দেখানো হয়েছে:

    শিল্ড বক্সে DUT ও AP

    ছবি ২. শিল্ড বক্সে DUT ও AP।

  4. হোস্ট থেকে AP অ্যাক্সেস করা যাচ্ছে কিনা তা যাচাই করতে SSH ব্যবহার করুন।

রেঞ্জিং অ্যাকুরেসি টেস্ট সেট-আপ করুন

রেঞ্জিং অ্যাকুরেসি টেস্ট সেট-আপ করতে:

  1. দুটি ম্যাচিং Android DUT ১ মিটার দূরে, একই উচ্চতায়, সরাসরি দৃষ্টিসীমার মধ্যে এবং প্রতিটি ডিভাইসের পিছনের দিক একে অপরের মুখোমুখি করে রাখুন। ছবি ৩-এ এই ওরিয়েন্টেশন দেখানো হয়েছে:

    ডিভাইসের ওরিয়েন্টেশন

    ছবি ৩. ডিভাইস ওরিয়েন্টেশন।

  2. USB কেবেলের মাধ্যমে দুটি ডিভাইস ডেস্কটপ মেশিনের সাথে কানেক্ট করুন।

স্ট্যান্ডার্ড দুই-ডিভাইস টেস্ট সেট-আপ করা

ডিফল্ট দুটি-ডিভাইস সেট-আপের জন্য:

  1. দুটি ম্যাচিং Android DUT প্রায় ২০ সেমি দূরে রাখুন।

  2. বিশেষভাবে সাজেস্ট করা হচ্ছে: দুটি ডিভাইসকেই শিল্ড বক্সে রাখুন। শিল্ড বক্স টেস্টের স্থায়িত্ব উন্নত করে এবং টেস্ট করার সময় হওয়া সমস্যা আরও সহজে ডিবাগ করে।

  3. টেলিকম টেস্টের জন্য, প্রতিটি DUT-তে সিম কার্ড ও সেলুলার সিগন্যাল থাকতে হবে। DUT শিল্ড বক্সে থাকলে, সেলুলার সিগন্যাল অবশ্যই বক্সের সাথে কাপল করতে হবে। অন্যথায়, ডিভাইসগুলি শিল্ড বক্স থেকে বের করে নিন।

  4. ঐচ্ছিক: ওয়াই-ফাই ডিবাগিংয়ের জন্য OTA স্নিফার সেট-আপ করুন।

CDM টেস্ট সেট-আপ করা

যে ডিভাইসে টেস্ট করা হচ্ছে তার বিল্ড টাইপের উপর নির্ভর করে test_permissions_sync টেস্ট কেসের আচরণ আলাদা হয়। এটি অত্যন্ত গুরুত্বপূর্ণ যে উভয় ডিবাগ করা যায় (userdebug বা eng) এবং ডিবাগ করা যায় না (user) এমন বিল্ড OEM-এর মাধ্যমে পরীক্ষা করা হয় এবং উভয় পরীক্ষার ফলাফলই যেন ইতিবাচক হয়।

ছাড়

অনুমতি সিঙ্ক API প্রয়োগের জন্য CDD ক্লজের শুধু এটি প্রয়োজন যে এটি যেন সুরক্ষিত চ্যানেলের মাধ্যমে ডিভাইসগুলির মধ্যে ডেটা সফলভাবে ট্রান্সফার করতে পারে। যেহেতু সুরক্ষিত চ্যানেল প্রয়োগ করা CDD মেনে চলার প্রয়োজনীয়তা নয়, তাই এই টেস্ট ডিবাগ করা যায় না এমন (ব্যবহারকারী) বিল্ডে এড়িয়ে যাওয়া যেতে পারে, তবে শুধুমাত্র আপনি CDM অনুমতি সিঙ্ক ফিচার ব্যবহার করা থেকে অপ্ট-আউট করতে চাইলে।

কোনও ব্যতিক্রম ছাড়াই ডিবাগ করা যায় এমন বিল্ডে টেস্ট পাস করতে হবে।

ডিবাগ করা যায় না এমন বিল্ডে টেস্ট করার জন্য পূর্বশর্ত

আপনি ছাড় না পেলে, নিম্নলিখিত পূর্বশর্তগুলি পূরণ করেছেন কিনা তা যাচাই করুন।

সুরক্ষিত চ্যানেল AVF (AttestationVerificationFramework) ব্যবহার করে হার্ডওয়্যারের বিশ্বাসযোগ্যতা যাচাই করে। উভয় পক্ষের দ্বারা জেনারেট করা অ্যাটেস্টেশনে নিজেদের সম্পর্কে বিভিন্ন তথ্য থাকে যাতে যাচাই করা যায় যে তাদের সিস্টেমে অননুমোদিত কোনও পরিবর্তন করা হয়নি। যাচাইকরণ প্রক্রিয়া চলাকালীন AVF নিম্নলিখিত স্ট্যাটাস চেক করে:

  • ডিভাইসে ইন্টারনেট অ্যাক্সেস আছে

  • ডিভাইসটি যাচাই করা বুট ব্যবহার করে এবং বিল্ডটি একটি রিলিজ-কী (ডেভ-কী নয়) দিয়ে সাইন করা হয়েছে

  • ডিভাইসের বুটলোডার লক করা আছে। আরও জানতে, বুটলোডার লক করা দেখুন।

  • OS, কী বুট ও কী ভেন্ডর প্যাচ লেভেল ১২ মাসের মধ্যে হতে হবে। এক বছরের বেশি পুরনো বিল্ড ব্যবহার করবেন না।

  • ডিভাইস অ্যাটেস্টেশন ভেন্ডরের অনুমোদন করা মূল সার্টিফিকেটের মাধ্যমে ব্যাক-আপ করা হয়। vendor_required_attestation_certificates.xml রিসোর্স ওভারলেতে আপনার বিশ্বস্ত মূল সার্টিফিকেট উল্লেখ করুন।

হোস্ট-সাইড টেস্ট রান করা

NFC টেস্টের মতো কিছু মাল্টিডিভাইস টেস্টের জন্য অতিরিক্ত সেট-আপ প্রয়োজন। যেসব টেস্টের জন্য অতিরিক্ত সেট-আপ প্রয়োজন, সেইসব টেস্ট আলাদাভাবে রান করা হয়। যেসব টেস্টের জন্য অতিরিক্ত সেট-আপের প্রয়োজন হয় না, আপনি সেগুলি একটি গ্রুপে চালাতে পারেন।

  1. আপনার টেস্ট ওয়ার্কস্টেশনে, ডিরেক্টরি থেকে cts-v-host কনসোল লঞ্চ করুন যেখানে CTS-V জিপ প্যাকেজ আনজিপ করা হয়েছে:

    ./android-cts-verifier/android-cts-v-host/tools/cts-v-host-tradefed
    
  2. DUT-তে CTS-V অ্যাপের মধ্যে থেকে, হোস্ট-সাইড টেস্ট বিকল্পে ক্লিক করুন। ছবি ৪-এ 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
    

    যেমন, NFC টেস্ট রান করতে, এই কমান্ড ব্যবহার করুন:

    run cts-v-host -m CtsNfcHceMultiDeviceTestCases
    

    DUT-তে CTS-V অ্যাপের প্রতিটি টেস্ট মডিউলের নিচে ফলাফল দেখা যায়। সবুজ চিহ্নিত টেস্ট পাস করেছে, লাল চিহ্নিত টেস্ট ফেল করেছে।

ওয়াই-ফাই AP কানেকশন টেস্ট রান করুন

আপনি নিম্নলিখিত দুটি উপায়ে ওয়াই-ফাই AP কানেকশন টেস্ট রান করতে পারবেন:

  • বিকল্প ১: CTS-V-এর জন্য সেট-আপ করা আগে থেকে থাকা ওয়াই-ফাই নেটওয়ার্ক ব্যবহার করুন।
  • বিকল্প ২: প্রোগ্রামেবল AP সেট-আপ করুন।

বিকল্প ১: CTS-V-এর জন্য সেট-আপ করা আগে থেকে থাকা ওয়াই-ফাই নেটওয়ার্ক ব্যবহার করুন

আগে থেকে আছে এমন ওয়াই-ফাই নেটওয়ার্কে ওয়াই-ফাই AP কানেকশন টেস্ট রান করতে:

  1. টেস্টবেড কনফিগারেশন ফাইল (WifiConnectionTestbed.yaml) এডিট করুন। এই ফাইলটি সেই ডিরেক্টরিতে আছে যেখানে CTS-Verifier আনজিপ করা হয়েছে। যেমন:

    ./android-cts-verifier/android-cts-v-host/testcases/CtsWifiConnectionTests/x86_64/connection/WifiConnectionTestbed.yaml
    
  2. wifi_ssid এবং wifi_password ফিল্ডের ভ্যালু পরিবর্তন করে ওয়াই-ফাই নেটওয়ার্কের SSID এবং পাসওয়ার্ড লিখুন। নিম্নলিখিত উদাহরণে এই সেটিংসের লোকেশন দেখানো হয়েছে:

    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
    

বিকল্প ২: প্রোগ্রামেবল AP-এর মাধ্যমে চালানো

প্রোগ্রাম করা যায় এমন AP-তে ওয়াই-ফাই AP কানেকশন টেস্ট রান করতে:

  1. টেস্টবেড কনফিগারেশন ফাইল (WifiConnectionTestbed.yaml) এডিট করুন। এই ফাইলটি সেই ডিরেক্টরিতে আছে যেখানে CTS-Verifier আনজিপ করা হয়েছে। যেমন:

    ./android-cts-verifier/android-cts-v-host/testcases/CtsWifiConnectionTests/x86_64/connection/WifiConnectionTestbed.yaml
    
  2. আপনার স্থানীয় SSH সেটিংসের উপর ভিত্তি করে, hostname-এর ভ্যালু পরিবর্তন করে AP-এর IP অ্যাড্রেস করুন। IP অ্যাড্রেস শনাক্ত করতে, AP-এর IP অ্যাড্রেস খুঁজুন বিকল্প দেখুন। নিচের উদাহরণে 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
    

USB হোস্ট-সাইড টেস্ট রান করা

Android 17-এ USB CTS-V হোস্ট-সাইড টেস্ট অন্তর্ভুক্ত আছে যা চালানোর জন্য ওয়াই-ফাইয়ের মাধ্যমে adb প্রয়োজন।

কিছু USB টেস্টের জন্য CTS-V হোস্ট ব্যবহার করতে হয় যাতে SystemAPIs অ্যাক্সেস করা যায়। এতে এমন অনুমতি থাকে যা সাধারণ CTS-V অ্যাপ অ্যাক্সেস করতে পারে না। এইসব টেস্ট আনটিথারড এবং ওয়াই-ফাইয়ের মাধ্যমে adb ব্যবহার করতে হবে।

DUT যদি UsbPort.java-এ পোর্ট পার্টনার BC 1.2 টাইপ বা USB পাওয়ার প্রোফাইল রিপোর্ট করা সাপোর্ট করে, তাহলে নিম্নলিখিত টাইপ-C অ্যাক্সেসরি প্রয়োজন:

  • একটি USB টাইপ-সি পাওয়ার ডেলিভারি (PD) চার্জার
  • একটি USB ব্যাটারি চার্জিং 1.2 (BC 1.2) স্ট্যান্ডার্ড ডাউনস্ট্রিম পোর্ট (SDP)। এইসব পোর্ট DUT-তে ৫০০ মিলিঅ্যাম্পিয়ার বা ৯০০ মিলিঅ্যাম্পিয়ার কারেন্ট প্রদান করার মধ্যে সীমাবদ্ধ এবং সাধারণত এক্সটার্নাল হাবের USB পোর্টে পাওয়া যায়।
  • একটি USB BC 1.2 চার্জিং ডাউনস্ট্রিম পোর্ট (CDP)। এইসব পোর্ট DUT ও ডেটাতে 1.5 A কারেন্ট প্রদান করতে পারে। ল্যাপটপ বা কম্পিউটারে টাইপ-সি পোর্ট সাধারণত CDP হয়।
  • একটি USB BC 1.2 ডেডিকেটেড চার্জিং পোর্ট (DCP)। এইসব পোর্ট ডেটা ছাড়াই DUT-তে 1.5 A কারেন্ট প্রদান করতে পারে। এই তালিকায় থাকা USB টাইপ-সি PD চার্জার সম্ভবত একটি DCP।
  1. ওয়াই-ফাইয়ের মাধ্যমে adb ব্যবহার করে DUT কানেক্ট করুন। সেট-আপ সংক্রান্ত বিবরণের জন্য, ওয়াই-ফাইয়ের মাধ্যমে ডিভাইসে কানেক্ট করুন দেখুন।

  2. সব USB কানেকশন থেকে ডিভাইসটি ফিজিক্যালি বিচ্ছিন্ন করুন। টেস্ট কমান্ড চালানোর সময় ডিভাইসটি কোনও USB হোস্ট বা অ্যাক্সেসরির সাথে যুক্ত থাকলে টেস্টটি ব্যর্থ হয়।

  3. নিম্নলিখিত টেস্ট কমান্ড রান করুন:

    run cts-v-host -m CtsUsbTypecTestCases
    

পরীক্ষার পরে, ফলাফল CTS-V অ্যাপের মধ্যে হোস্ট-সাইড পরীক্ষা বিকল্পের অধীনে নিম্নলিখিত ছবির মতো দেখানো হয়:

CTS-V অ্যাপে হোস্ট-সাইড USB টেস্ট

ছবি ৬. CTS-V অ্যাপে হোস্ট-সাইড USB টেস্ট।

হোস্ট-সাইড USB CTS-V অ্যাপে CtsUsbTypecTestCases
স্যুট

ছবি ৭. হোস্ট-সাইড USB CTS-V অ্যাপে 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 চলাকালীন সার্ভার থেকে কোনও উত্তর পাওয়া যায়নি

আপনি যদি নিম্নলিখিত ত্রুটি মেসেজ পান, তাহলে নির্দিষ্ট কিছু ডিভাইসে OEM-নির্দিষ্ট ব্যাকগ্রাউন্ড প্রসেস ম্যানেজমেন্টের মাধ্যমে টেস্ট অ্যাপটি ফ্রিজ বা বন্ধ করা হতে পারে:

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

NFC টেস্টের সময় 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

NFC টেস্ট চলাকালীন ট্রানজ্যাকশন ব্যর্থ হওয়ার ত্রুটি মেসেজ ঠিক করা

আপনি যদি সব NFC টেস্ট কেসের জন্য Transaction failed, check device logs for more information. মেসেজ পান, তাহলে সম্ভবত DUT-এর NFC চিপ PN532 শনাক্ত করতে পারছে না।

হোস্টের সাথে একাধিক ডিভাইস কানেক্ট করা থাকলে এবং সেগুলির মধ্যে কয়েকটির উপরে PN532 না থাকলে, ভুল DUT বেছে নেওয়া হতে পারে। আরও তথ্যের জন্য, NFC টেস্ট সেট-আপ করা দেখুন।

এই সমস্যার সমাধান করতে, নিম্নলিখিতগুলির মধ্যে যেকোনও একটি করুন:

  • -s ফ্ল্যাগ ব্যবহার করে আপনার হোস্ট-সাইড টেস্ট কমান্ডে সঠিক DUT-এর সিরিয়াল সেট করুন।

  • হোস্ট থেকে সব নন-DUT ডিভাইস ডিসকানেক্ট করুন।

CDM টেস্ট কেস test_permissions_sync এড়িয়ে যাওয়া হয়েছে

ডিবাগ করা যায় না এমন ডিভাইসে টেস্ট চালানো হলে, আপনি ছাড় পেয়েছেন কিনা তা দেখুন। অন্যথায়, দুটি ডিভাইসেই পূর্বপ্রয়োজনীয়তা পূরণ করা হয়েছে কিনা তা যাচাই করুন।