CTS ভেরিফায়ার মাল্টিডিভাইস পরীক্ষা চালান

এই পৃষ্ঠায় Android 16 QPR2 বা তার পরবর্তী ভার্সনের জন্য Better Together CTS Verifier (CTS-V) পরীক্ষা ব্যবহারের নির্দেশাবলী দেওয়া আছে।

হোস্ট-সাইড মাল্টিডিভাইস পরীক্ষা সেট আপ করুন

এই বিভাগে মাল্টিডিভাইস পরীক্ষা কীভাবে সেট আপ করতে হয় তা ব্যাখ্যা করা হয়েছে।

  1. আপনার ডেস্কটপ মেশিনটি CTS-এর জন্য অপারেটিং সিস্টেমের প্রয়োজনীয়তা পূরণ করে কিনা তা যাচাই করুন।
  2. আপনার ডেস্কটপে adb, AAPT2, এবং Python সঠিকভাবে ইনস্টল করা আছে কিনা তা ইনস্টল এবং যাচাই করতে "ডেস্কটপ সফ্টওয়্যার ইনস্টল করুন" এর ধাপ 2 এবং 5 অনুসরণ করুন।

    • আপনার পাইথন সংস্করণ 3.11 বা তার বেশি হওয়া উচিত। আপনার পাইথন সংস্করণ নির্ধারণ করতে, python3 --version চালান। যদি সংস্করণটি 3.11 এর চেয়ে কম হয়, তাহলে সর্বশেষ অফিসিয়াল পাইথন রিলিজটি ইনস্টল করুন। আরও তথ্যের জন্য, python.org এর ডাউনলোড বিভাগটি দেখুন।
    • কিছু পরীক্ষার জন্য হোস্টের কাছে Python venv মডিউল থাকা প্রয়োজন। ডেবিয়ান এবং উবুন্টু সিস্টেমে, এই মডিউলটি ডিফল্টরূপে ইনস্টল নাও হতে পারে। আপনার Python সংস্করণে venv মডিউল আছে কিনা তা নির্ধারণ করতে, python3 -m venv venv চালান। যদি এই কমান্ডটি ব্যর্থ হয়, তাহলে একটি ত্রুটি বার্তা প্রদর্শিত হবে। python3.x-venv প্যাকেজ ইনস্টল করতে প্রম্পটটি অনুসরণ করুন।
  3. পরীক্ষাধীন দুটি ম্যাচিং ডিভাইস (DUTs) প্রস্তুত করুন, প্রতিটিতে CTS-V সেট আপ থাকবে।

    • DUT সেট আপ করার তথ্যের জন্য, DUT সেট আপ দেখুন।
    • CTS-V সেট আপ করার নির্দেশাবলীর জন্য, সেটআপ দেখুন।
  4. আপনার পরীক্ষার ধরণের জন্য সেটআপ বিভাগে যান:

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

NFC পরীক্ষা সেট আপ করুন

NFC পরীক্ষায় একটি DUT এবং একটি PN532 NFC চিপ ব্যবহার করা হয়।

NFC পরীক্ষা সেট আপ করতে:

  1. একটি PN532 NFC চিপ কিনুন। আমরা অল-ইন-ওয়ান PN532 সুপারিশ করি।
  2. DUT-তে, সেটিংস অ্যাপে নেভিগেট করুন।

  3. NFC সক্ষম করুন।

  4. NFC চিপটি অবস্থান করুন:

    • ফোনের জন্য, চিত্র ১-এ দেখানো DUT-এর NFC রিডারটি রাখুন:

      এনএফসি চিপ পজিশনিং

      চিত্র ১. NFC চিপ পজিশনিং।

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

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

ঐচ্ছিক: Wi-Fi AP সংযোগ পরীক্ষা সেট আপ করুন

Wi-Fi অ্যাক্সেস পয়েন্ট (AP) সংযোগ পরীক্ষা ( CtsWifiConnectionTests ) একটি DUT এবং AP এর মধ্যে সংযোগ পরীক্ষা করে। আমরা দৃঢ়ভাবে সুপারিশ করছি যে আপনি এই পরীক্ষাগুলি চালান, তবে CTS-V Android 16 16 QPR2 তে এগুলি প্রয়োজন হয় না।

এই পরীক্ষাগুলির জন্য একটি DUT এবং একটি OpenWrt Banana Pi R3 AP প্রয়োজন।

Wi-Fi AP সংযোগ পরীক্ষা সেট আপ করতে:

  1. এই টেবিলে তালিকাভুক্ত Banana Pi R3 AP এবং আনুষাঙ্গিক জিনিসপত্র কিনুন:

    আইটেম পরিমাণ
    BPi-R3 বোর্ড, Banana Pi BPI-R3 রাউটার বোর্ডের অনুরূপ, MediaTek MT7986 চিপ ডিজাইন সাপোর্ট সহ Wi-Fi 6, 2G DDR RAM, 8G eMMC ফ্ল্যাশ অনবোর্ড
    BPI-R3 অ্যালুমিনিয়াম কেস, BPI-R3 আয়রন কেসের অনুরূপ
    BPi-R3 অ্যালুমিনিয়াম হিটসিঙ্ক (কুলিং ফ্যান), ফ্যান সহ BPI-R3 অ্যালুমিনিয়াম হিটসিঙ্কের অনুরূপ
    BPI দোকানের 5DB অ্যান্টেনার মতো, কেবল সহ 2 এবং 5 GHz অ্যান্টেনা
    পাওয়ার অ্যাডাপ্টার, ১২V/২A DC পাওয়ার সাপ্লাইয়ের অনুরূপ

    আপনার কেনাকাটা করতে, Banana Pi BPI-R3 পৃষ্ঠার " সহজ কিনতে পারা" বিভাগটি দেখুন।

  2. অ্যাক্সেস পয়েন্ট সেট আপ করুন। অ্যাক্সেস পয়েন্ট সেট আপ করার তথ্যের জন্য, Banana Pi BPI-R3 AP সেট আপ করুন দেখুন।

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

    ডং গুয়ান ঝেং শেং ইলেকট্রনিক্স টেকনোলজি কোং, লিমিটেড
    বোহুই ইন্ডাস্ট্রিয়াল পার্ক, পানলং রোড, লিয়াওবু টাউন, ডংগুয়ান সিটি, গুয়াংডং প্রদেশ, চীন
    যোগাযোগ: ফরেস্ট প্যান
    ইমেইল: forest.pan@jtpmak.cn
    ফোন (চীন): +৮৬ ১৮৬৭৬৯৯৩৫৫৬

  4. DUT এবং AP হোস্টের সাথে সংযুক্ত করুন এবং একটি RF শিল্ড বাক্সে রাখুন। DUT এবং AP কমপক্ষে 10 সেমি দূরে থাকা উচিত। চিত্র 2 এই কনফিগারেশনটি দেখায়:

    শিল্ড বক্সে DUT এবং AP

    চিত্র ২। শিল্ড বাক্সে DUT এবং AP।

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

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

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

  1. প্রায় ২০ সেমি দূরে দুটি মিলে যাওয়া Android DUT রাখুন।
  2. একটি পরিষ্কার পরিবেশ স্থাপন করতে, উভয় ডিভাইসকে একটি শিল্ড বাক্সে রাখুন।

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

সিডিএম পরীক্ষা সেট আপ করুন

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

অব্যাহতি

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

পরীক্ষাগুলি অবশ্যই ডিবাগযোগ্য বিল্ডগুলিতে ব্যতিক্রম ছাড়াই পাস করতে হবে।

ডিবাগযোগ্য নয় এমন বিল্ডগুলিতে পরীক্ষার জন্য পূর্বশর্ত

যদি পূর্ববর্তী অব্যাহতি ধারাগুলি দ্বারা আপনি অব্যাহতিপ্রাপ্ত না হন, তাহলে যাচাই করুন যে আপনি নিম্নলিখিত পূর্বশর্তগুলি পূরণ করেন।

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

  • ডিভাইসে ইন্টারনেট অ্যাক্সেস আছে
  • ডিভাইসটি যাচাইকৃত বুট ব্যবহার করে এবং বিল্ডটি অবশ্যই একটি রিলিজ-কী দিয়ে স্বাক্ষরিত হতে হবে, ডেভ-কী দিয়ে নয়।
  • ডিভাইসটি বুটলোডার লক করা আছে। বিস্তারিত নির্দেশাবলীর জন্য, বুটলোডার লক করা দেখুন
  • ওএস, কী বুট এবং কী বিক্রেতা প্যাচ লেভেল ১২ মাসের মধ্যে। এক বছরের বেশি পুরনো বিল্ড ব্যবহার করবেন না।
  • ডিভাইস অ্যাটেস্টেশন বিক্রেতা-অনুমোদিত রুট সার্টিফিকেটগুলির একটি দ্বারা সমর্থিত। vendor_required_attestation_certificates.xml রিসোর্স ওভারলেতে আপনার বিশ্বস্ত রুট সার্টিফিকেটগুলি নির্দিষ্ট করুন।

হোস্ট-সাইড মাল্টিডিভাইস পরীক্ষা চালান (AOSP 16 বা তার পরবর্তী সংস্করণ)

CTS Verifier 16 হোস্ট-সাইড মাল্টিডিভাইস পরীক্ষার জন্য সমর্থন চালু করে। এই পরীক্ষাগুলি ডিভাইসে ম্যানুয়াল পরীক্ষার পরিবর্তে হোস্টে স্বয়ংক্রিয় স্ক্রিপ্ট ব্যবহার করে সম্পাদন করা যেতে পারে। প্রতিটি পরীক্ষা সম্পন্ন হওয়ার পরে, ফলাফল স্বয়ংক্রিয়ভাবে DUT-তে আপলোড করা হয় এবং CTS Verifier অ্যাপে প্রদর্শিত হয়।

এই বিভাগটি হোস্ট-সাইড মাল্টিডিভাইস পরীক্ষাগুলি কীভাবে চালানো যায় তা ব্যাখ্যা করে।

মাল্টিডিভাইস পরীক্ষা চালান

একটি মাল্টিডিভাইস পরীক্ষা চালানোর জন্য:

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

    ./android-cts-verifier/android-cts-v-host/tools/cts-v-host-tradefed
    
  2. DUT-তে CTS Verifier অ্যাপের মধ্যে থেকে, Host-side Tests এ ক্লিক করুন। চিত্র 3 CTS Verifier অ্যাপে হোস্ট-সাইড পরীক্ষাগুলি দেখায়:

    CTS Verifier অ্যাপে হোস্ট-সাইড মাল্টিডিভাইস পরীক্ষা

    চিত্র ৩. CTS Verifier অ্যাপে হোস্ট-সাইড মাল্টিডিভাইস পরীক্ষা।

    টেস্ট হোস্ট-সাইড মাল্টিডিভাইস টেস্ট মডিউলের একটি তালিকা প্রদর্শিত হয়।

  3. আপনি যে টেস্ট মডিউলটি চালাতে চান তার নাম শনাক্ত করুন। উদাহরণস্বরূপ, CompanionDeviceManager মডিউলটি CtsCompanionDeviceManagerMultiDeviceTestCases হিসাবে তালিকাভুক্ত।

  4. cts-v-host কনসোলে, নিম্নলিখিত কমান্ডটি চালান:

    run cts-v-host -m test_module_name
    

    উদাহরণস্বরূপ:

    run cts-v-host -m CtsCompanionDeviceManagerMultiDeviceTestCases
    

    xTS কনসোল পরীক্ষাগুলি চালানো শেষ করার পরে, ফলাফলগুলি CTS যাচাইকারী অ্যাপে প্রদর্শিত হয়। সবুজ চিহ্নিত পরীক্ষাগুলি উত্তীর্ণ হয়েছে। লাল চিহ্নিত পরীক্ষাগুলি ব্যর্থ হয়েছে। চিত্র 4 CtsCompanionDeviceManager পরীক্ষার উদাহরণ ফলাফল দেখায়:

    CTS Verifier অ্যাপে হোস্ট-সাইড মাল্টিডিভাইস পরীক্ষার ফলাফল

    চিত্র ৪। CTS Verifier অ্যাপে হোস্ট-সাইড মাল্টিডিভাইস পরীক্ষার ফলাফল।

ঐচ্ছিক: Wi-Fi AP সংযোগ পরীক্ষা চালান

Wi-Fi 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 ঠিকানা খুঁজুন দেখুন।

    নিম্নলিখিত উদাহরণটি WifiConnectionTestbed.yaml ফাইলে hostname ফিল্ডের অবস্থান দেখায়:

    TestBeds:
    - Name: WifiConnectionTestbed
      Controllers:
        # Specify settings for the AP.
        OpenWrtDevice:
        - hostname: AP-IP
          skip_init_reboot: True
    
  3. cts-v-host কনসোলে, নিম্নলিখিত কমান্ডটি চালান:

    run everything -m CtsWifiConnectionTests
    

মাল্টিডিভাইস পরীক্ষাগুলির সমস্যা সমাধান করুন

এই বিভাগটি সম্ভাব্য সমস্যাগুলির জন্য সমস্যা সমাধানে সহায়তা প্রদান করে।

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 পরীক্ষার সময় লেনদেন ব্যর্থতার ত্রুটির বার্তা ঠিক করুন

যদি আপনি Transaction failed, check device logs for more information. সমস্ত NFC পরীক্ষার ক্ষেত্রে, সম্ভবত DUT এর NFC চিপ PN532 সনাক্ত করতে পারে না।

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

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

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

  • হোস্ট থেকে সমস্ত নন-DUT ডিভাইস সংযোগ বিচ্ছিন্ন করুন।

CDM টেস্ট কেস test_permissions_sync উপেক্ষা করা হয়েছে

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