মাল্টি-ডিভাইস NFC পরীক্ষা চালান (Android 15)

এই ডকুমেন্টটিতে একাধিক ডিভাইসে এনএফসি টেস্ট চালানোর পদ্ধতি ব্যাখ্যা করা হয়েছে।

পূর্বশর্ত পূরণ করুন

একাধিক ডিভাইসে এনএফসি পরীক্ষা চালানোর আগে, নিম্নলিখিত কাজগুলো করুন:

  1. আপনার অ্যান্ড্রয়েড ১৫ বাস্তবায়নের জন্য একটি ডিভাইস প্রস্তুত করুন।
  2. CTS-V এর নির্দেশনাসমূহ অনুসরণ করুন।
  3. CTS-V সেটআপ অনুসরণ করুন।

পরীক্ষার জন্য একটি DUT এবং একটি PN532 NFC রিডার প্রস্তুত করুন।

পূর্ববর্তী ধাপগুলো শেষ করার পর, পরীক্ষার জন্য একটি DUT এবং একটি PN532 NFC রিডার প্রস্তুত করতে এই ধাপগুলো অনুসরণ করুন:

  1. ইউএসবি-র মাধ্যমে ডিইউটি-কে একটি হোস্ট মেশিনের সাথে সংযুক্ত করুন।
  2. হোস্টকে ADB-এর মাধ্যমে DUT অ্যাক্সেস করার অনুমতি দিন।
  3. DUT-তে CTS Verifier অ্যাপ ( CtsVerifier.apk ) ইনস্টল করুন:

    extract root/out/host/linux-x86/cts-verifier/android-cts-verifier.zip
    
    cd android-cts-verifier
    
    adb install -r -g CtsVerifier.apk
    
  4. NFC পরীক্ষার জন্য প্রয়োজনীয় APK-গুলো ইনস্টল করুন:

    cd MultiDevice
    
    adb install -r -g NfcEmulatorTestApp.apk
    

DUT-এর জন্য NFC সেট আপ করুন

DUT-এর জন্য NFC সেট আপ করতে এই ধাপগুলো অনুসরণ করুন:

  1. DUT-তে, সেটিংস মেনুতে যান।
  2. NFC বা কানেক্টেড ডিভাইস সেকশনটি খুঁজুন।
  3. এনএফসি টগল সুইচটি চালু আছে কিনা তা যাচাই করুন।
  4. ফোনের এনএফসি রিডারে একটি এনএফসি চিপ রাখুন:

    1. একটি PN532 NFC চিপ সংগ্রহ করুন। আমরা অল-ইন-ওয়ান PN532- এর নন-BLE বিকল্পটির সুপারিশ করি।
    2. একটি ইউএসবি ক্যাবল ব্যবহার করে পিএন৫৩২ এনএফসি চিপটি লিনাক্স হোস্টের সাথে সংযুক্ত করুন।
    3. নিচের ছবিতে দেখানো অনুযায়ী PN532 NFC চিপটি ফোনের NFC রিডারের উপর রাখুন:

    এনএফসি চিপ স্থাপন

    চিত্র ১. এনএফসি চিপের অবস্থান।

পরীক্ষার পরিবেশ সেট আপ করুন

টেস্ট এনভায়রনমেন্ট সেট আপ করার জন্য এই ধাপগুলো অনুসরণ করুন:

  1. পরীক্ষার পরিবেশ সেট আপ করতে এই কমান্ডগুলো চালান:

    cd MultiDevice
    
    source build/envsetup.sh
    

    এই কমান্ডটি পাইথন পরীক্ষা করে এবং PYTHONPATH এনভায়রনমেন্ট ভেরিয়েবল সেট করে। যদি টার্মিনালে কোনো ত্রুটি প্রিন্ট না হয়, তাহলে মাল্টি-ডিভাইস টেস্টগুলো চালানোর জন্য পরিবেশ প্রস্তুত।

    রানটাইমে যদি আপনি libtinfo.so.6: no version information available (required by /bin/sh) এই এরর মেসেজটি দেখতে পান, তাহলে libtinfo.so.6 ফাইলটির নাম পরিবর্তন করতে নিম্নলিখিত কমান্ডটি চালান:

    mv $ENV_DIRECTORY/lib/libtinfo.so.6 $ENV_DIRECTORY/lib/libtinfo.so.6.bak
    
  2. MultiDevice/config.yml ফাইলে DUT এবং PN532 NFC রিডারের ডিভাইস সিরিয়াল আইডি সেট করে টেস্ট বেডটি সেট আপ করুন:

    TestBeds:
      - Name: CtsNfcHceMultiDeviceTestCases-py-ctsv
        Controllers:
          AndroidDevice:
            - serial: "<device-id>"
        TestParams:
          pn532_serial_path: "<pn532-serial-path>"
    

NFC পরীক্ষাগুলো চালান

NFC টেস্টগুলো চালানোর জন্য:

  1. CTS-V অ্যাপটি খুলুন এবং NFC Tests-এ ট্যাপ করুন:

    CTS-V অ্যাপ

    চিত্র ২. CTS-V অ্যাপ।

    টেস্ট কেসগুলির তালিকা সহ তথ্য উইন্ডোটি প্রদর্শিত হয়:

    CTS-V অ্যাপ টেস্ট কেসগুলি

    চিত্র ৩. CTS-V অ্যাপের টেস্ট কেসসমূহ।

  2. আপনার হোস্টে পরীক্ষাগুলো চালান:

    MultiDevice$ python3 tools/run_all_tests.py
    

    পরীক্ষাগুলো সম্পন্ন হলে, পরীক্ষার ফলাফল CTS-V অ্যাপে আপডেট করা হয়। সফল পরীক্ষাগুলো সবুজ রঙের হয়:

    CTS-V পরীক্ষার ফলাফল

    চিত্র ৪. সি.টি.এস-ভি পরীক্ষার ফলাফল।

  3. যদি আপনি লাল রঙে চিহ্নিত কোনো ব্যর্থতা দেখতে পান, তাহলে ব্যর্থ পরীক্ষাগুলো পুনরায় চালানোর জন্য নিম্নলিখিত কমান্ডটি ব্যবহার করুন:

    python3 tools/run_all_tests.py --test_cases "`TestCaseA`" "`TestCaseB`" --test_files "`TestFileA`"
    

    কোথায়:

    • CTS-V-তে প্রদর্শিত টেস্ট কেসগুলোর নাম হলো TestCaseA এবং TestCaseB
    • TestFileA হলো সেই টেস্ট ফাইল, যেখানে টেস্ট কেসগুলো রয়েছে।

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

    python3 tools/run_all_tests.py --test_cases "test_conflicting_non_payment" "test_conflicting_non_payment_prefix" --test_files "CtsNfcHceMultiDeviceTestCases-py-ctsv"