একটি বাক্সে সম্পূর্ণ স্বয়ংচালিত পরীক্ষা

কমপ্লিট অটোমোটিভ টেস্টস ইন এ বক্স (ক্যাটবক্স) হল একটি ওপেন সোর্স প্যাকেজ যা ন্যূনতম কনফিগারেশনের সাথে স্বয়ংচালিত পরীক্ষাগুলিকে স্ট্রীমলাইন এবং এক্সিকিউট করার জন্য প্রয়োজনীয় ফ্রেমওয়ার্ক এবং টুল সরবরাহ করে। CATBox আপনার Android Automotive OS (AAOS) বাস্তবায়ন পরীক্ষা ও যাচাই করার জন্য যে টুল, অবকাঠামো এবং পরীক্ষাগুলি ব্যবহার করেন তার সাথে মাপযোগ্য এবং সামঞ্জস্যপূর্ণ। ফলস্বরূপ, আপনি বাজারে উচ্চ মানের পণ্য সরবরাহ করতে পারেন।

CATBox নকশা এবং বাস্তবায়ন

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

নিম্নলিখিত চিত্রটি একটি ক্যাটবক্স প্যাকেজের একটি উচ্চ স্তরের নকশাকে চিত্রিত করে৷

CATBox

চিত্র 1. CATBox প্যাকেজ

Tradefed

Tradefed হল একটি ওপেন সোর্স ক্রমাগত টেস্টিং ফ্রেমওয়ার্ক যা অ্যান্ড্রয়েড ডিভাইসে পরীক্ষা চালানোর জন্য ব্যবহৃত হয়। বিস্তারিত জানার জন্য, ট্রেড ফেডারেশন ওভারভিউ দেখুন।

স্বয়ংচালিত পরীক্ষার কাঠামো

CATBox একটি অটোমোটিভ টেস্ট ফ্রেমওয়ার্কের উপর ভিত্তি করে যার নাম Spectatio , যা স্বয়ংচালিত ডিভাইসে বিভিন্ন অ্যাপ পরীক্ষা করার জন্য API প্রদান করে। এটি UI অটোমেটরের উপরে তৈরি করা হয়েছে, একটি ওপেন সোর্স টেস্টিং ফ্রেমওয়ার্ক, যা ব্যবহারকারী এবং সিস্টেম অ্যাপ্লিকেশনের সাথে ইন্টারঅ্যাক্ট করে এমন UI পরীক্ষা তৈরি করতে API-এর একটি সেট প্রদান করে।

CATBox টেস্ট স্যুট ডাউনলোড

অ্যান্ড্রয়েড 14

অ্যান্ড্রয়েড অটোমোটিভ 14 হল ডেভেলপমেন্ট মাইলস্টোন কোড-নামযুক্ত U। Android 14-এর জন্য CATBox টেস্ট স্যুট ডাউনলোড করতে নিম্নলিখিত লিঙ্কগুলি ব্যবহার করুন:

অ্যান্ড্রয়েড 12

অ্যান্ড্রয়েড 12 হল ডেভেলপমেন্ট মাইলস্টোন কোড-নামযুক্ত এস। Android 12-এর জন্য CATBox টেস্ট স্যুট ডাউনলোড করতে নিম্নলিখিত লিঙ্কগুলি ব্যবহার করুন:

অ্যান্ড্রয়েড 11

অ্যান্ড্রয়েড 11 হল ডেভেলপমেন্ট মাইলস্টোন কোড-নামযুক্ত R। Android 11-এর জন্য CATBox টেস্ট স্যুট ডাউনলোড করতে নিম্নলিখিত লিঙ্কগুলি ব্যবহার করুন:

CATBox তৈরি করুন

স্থানীয় ওয়ার্কস্টেশনে Android AOSP কোড পাওয়া গেলে catbox বিল্ড কমান্ডটি ব্যবহার করুন।

স্থানীয়ভাবে ক্যাটবক্স প্যাকেজ তৈরি করতে:

  1. ডিভাইস আর্কিটেকচারের উপর ভিত্তি করে ডিভাইস টার্গেট নির্বাচন করুন এবং নিম্নলিখিত কমান্ডটি চালান:

    lunch <target>
    
  2. CATBox তৈরি করতে, নিম্নলিখিত কমান্ডটি চালান:

    make catbox
    

    এই কমান্ডটি /out/host/linux-x86/catbox ডিরেক্টরিতে android-catbox.zip ফাইল তৈরি করে, যা পরীক্ষা চালানোর জন্য ব্যবহার করা যেতে পারে।

পরিবেশ স্থাপন করুন

CATBox পরীক্ষা চালানোর জন্য প্রয়োজনীয় পরিবেশ সেটআপ CTS সেট আপ করার অনুরূপ। পরিবেশ সেট আপ করতে, নিম্নলিখিত প্রতিটি কাজ সম্পূর্ণ করুন:

CATBox সেট আপ করুন এবং চালান

অ্যান্ড্রয়েড ডিভাইসে পরীক্ষা চালানোর জন্য ট্রেডফেড টেস্ট ফ্রেমওয়ার্ক ব্যবহার করুন। আপনি CATBox সেট আপ করার আগে, ট্রেড ফেডারেশন ওভারভিউ দেখুন।

CATBox সেট আপ এবং চালানোর জন্য, নীচের বিভাগগুলি দেখুন।

ডিভাইস সেট আপ করুন

একটি পরীক্ষা পরিকল্পনা চালানোর আগে, আপনার ডিভাইস সেট আপ করতে নিম্নলিখিত পদক্ষেপগুলি সম্পূর্ণ করুন:

  1. নিশ্চিত করুন যে আপনি অ্যান্ড্রয়েড ডিবাগ ব্রিজ (এডিবি) এবং অ্যান্ড্রয়েড অ্যাসেট প্যাকেজিং টুল (AAPT) উভয়ের সাম্প্রতিক সংস্করণ ইনস্টল করেছেন, সেইসাথে আপনার মেশিনের সিস্টেম পাথে এই সরঞ্জামগুলির অবস্থান যোগ করেছেন৷ বিস্তারিত জানার জন্য, ADB এবং AAPT দেখুন।

  2. কমপক্ষে একটি ডিভাইস সংযুক্ত করুন এবং ডিভাইস আন্ডার টেস্ট (DUT) নিম্নরূপ প্রস্তুত করুন:

    1. স্বয়ংচালিত ডিভাইস ফ্যাক্টরি রিসেট করতে, সেটিংস > সিস্টেম > রিসেট বিকল্প > সমস্ত ডেটা মুছুন এ যান।

    2. ডিভাইসটি স্বয়ংক্রিয়ভাবে পুনরায় চালু হওয়ার জন্য অপেক্ষা করুন।

    3. নিশ্চিত করুন যে অ্যাডবি সক্রিয় আছে। ডিভাইস উপলব্ধ নিশ্চিত করতে, নিম্নলিখিত কমান্ড চালান:

      adb devices
      
    4. রুট সক্ষম করতে, নিম্নলিখিত কমান্ডটি চালান:

      adb -s DEVICE_SERIAL root
      

      স্বয়ংচালিত ডিভাইসের জন্য সিরিয়াল আইডি দিয়ে DEVICE_SERIAL প্রতিস্থাপন করুন।

    5. Wi-Fi এর সাথে সংযোগ করুন৷

CATBox প্যাকেজটি বের করুন

ডিভাইস সেট আপ করার পরে, CATBox প্যাকেজটি আনজিপ করুন এবং নিষ্কাশিত ফোল্ডারে যান:

unzip android-catbox.zip
cd android-catbox

CATBox এ পরীক্ষা চালান

CATBox প্যাকেজে পরীক্ষার পরিকল্পনা সহ CATBox চালানোর জন্য:

./tools/catbox-tradefed run commandAndExit TEST_PLAN_NAME --serial DEVICE_SERIAL

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

উপলব্ধ পরিকল্পনার সবচেয়ে সম্পূর্ণ তালিকা পেতে, কমান্ড লাইন ব্যবহার করুন:

./tools/catbox-tradefed list plans | grep -i catbox

পরীক্ষার পরিকল্পনার ধরন

নিম্নলিখিত টেবিল উপলব্ধ কার্যকরী পরীক্ষা পরিকল্পনা প্রদর্শন করে.

কার্যকরী পরীক্ষার পরিকল্পনা বর্ণনা
catbox-functional কার্যকরী পরীক্ষা।
catbox-functional-app-info-setting অ্যাপ্লিকেশন তথ্য সেটিং কার্যকরী পরীক্ষা.
catbox-functional-admin-user-grant-permissions অ্যাডমিন ব্যবহারকারীর অনুমতি কার্যকরী পরীক্ষা মঞ্জুরি.
catbox-functional-app-info-setting-ui-elements অ্যাপ্লিকেশন তথ্য সেটিং কার্যকরী পরীক্ষা.
catbox-functional-appgrid অ্যাপ গ্রিড কার্যকরী পরীক্ষা।
catbox-functional-base কার্যকরী পরীক্ষার তালিকা।
catbox-functional-bluetooth-audio ব্লুটুথ অডিও কার্যকরী পরীক্ষা.
catbox-functional-bluetooth-palette স্ট্যাটাস বার কার্যকরী পরীক্ষা।
catbox-functional-bluetooth-tests Mobly ব্যবহার করে ব্লুটুথ পরীক্ষা।
catbox-functional-brightness-palette স্ট্যাটাস বার কার্যকরী পরীক্ষা।
catbox-functional-btmoped ব্লুটুথ মোপেড-ভিত্তিক কার্যকরী পরীক্ষা।
catbox-functional-date-time-setting তারিখ এবং সময় নির্ধারণ কার্যকরী পরীক্ষা.
catbox-functional-dial কার্যকরী পরীক্ষা ডায়াল করুন।
catbox-functional-display-setting প্রদর্শন সেটিং কার্যকরী পরীক্ষা.
catbox-functional-driving-optimized-apps UX সীমাবদ্ধতা কার্যকরী পরীক্ষা।
catbox-functional-enable-developers-option বিকাশকারী বিকল্প কার্যকরী পরীক্ষা সক্ষম করুন।
catbox-functional-home হোম কার্যকরী পরীক্ষা.
catbox-functional-lock-screen লক স্ক্রিন কার্যকরী পরীক্ষা।
catbox-functional-mediacenter মিডিয়া সেন্টার কার্যকরী পরীক্ষা.
catbox-functional-microphone-recent-apps মাইক্রোফোন সেটিং কার্যকরী পরীক্ষা.
catbox-functional-microphone-setting মাইক্রোফোন সেটিং কার্যকরী পরীক্ষা.
catbox-functional-multiuser মাল্টিউজার কার্যকরী পরীক্ষা।
catbox-functional-multiuser-system-user মাল্টিউজার কার্যকরী পরীক্ষা।
catbox-functional-navigation-bar নেভিগেশন বার কার্যকরী পরীক্ষা.
catbox-functional-network-palette স্ট্যাটাস বার কার্যকরী পরীক্ষা।
catbox-functional-network-setting নেটওয়ার্ক সেটিং কার্যকরী পরীক্ষা.
catbox-functional-notification বিজ্ঞপ্তি কার্যকরী পরীক্ষা.
catbox-functional-privacy-permission-manager গোপনীয়তা অ্যাপ্লিকেশন অনুমতি সেটিং কার্যকরী পরীক্ষা.
catbox-functional-privacy-setting মাইক্রোফোন সেটিং কার্যকরী পরীক্ষা.
catbox-functional-privacy-setting-ui-elements গোপনীয়তা সেটিং কার্যকরী পরীক্ষা.
catbox-functional-profile-icon প্রোফাইল আইকন বার কার্যকরী পরীক্ষা.
catbox-functional-profiles-icon-list প্রোফাইল আইকন তালিকা পরীক্ষা.
catbox-functional-security-setting নিরাপত্তা সেটিং কার্যকরী পরীক্ষা.
catbox-functional-setting কার্যকরী পরীক্ষা সেট করা।
catbox-functional-settings-location অবস্থান পরীক্ষা সেট করা.
catbox-functional-sound-setting শব্দ সেটিং কার্যকরী পরীক্ষা.
catbox-functional-status-bar স্ট্যাটাস বার কার্যকরী পরীক্ষা।
catbox-functional-storage-setting স্টোরেজ সেটিং কার্যকরী পরীক্ষা.
catbox-functional-system-setting সিস্টেম সেটিং কার্যকরী পরীক্ষা.
catbox-functional-systemui সিস্টেম UI পরীক্ষা।
catbox-functional-ux-restriction UX সীমাবদ্ধতা কার্যকরী পরীক্ষা।
catbox-functional-ux-restriction-facet-bar UX সীমাবদ্ধতা কার্যকরী পরীক্ষা।

নিম্নলিখিত সারণীতে CATBox কর্মক্ষমতা পরীক্ষার পরিকল্পনা রয়েছে।

কর্মক্ষমতা পরীক্ষার পরিকল্পনা বর্ণনা
catbox-performance-cold-app-start-up-dialer ডায়ালার এবং ফোনের জন্য কোল্ড অ্যাপ স্টার্ট-আপ কর্মক্ষমতা পরীক্ষা।
catbox-performance-cold-app-start-up-mediacenter মিডিয়া সেন্টারের জন্য কোল্ড অ্যাপ স্টার্ট-আপ কর্মক্ষমতা পরীক্ষা।
catbox-performance-cold-app-start-up-settings সেটিংসের জন্য কোল্ড অ্যাপ স্টার্ট-আপ কর্মক্ষমতা পরীক্ষা।
catbox-performance-create-and-switch-to-new-guest নতুন অতিথির কাছে যেতে বিলম্ব পরিমাপ করুন।
catbox-performance-create-and-switch-to-new-user নতুন নন-অ্যাডমিন ব্যবহারকারীর কাছে যেতে লেটেন্সি পরিমাপ করুন।
catbox-performance-hot-app-start-up-dialer ডায়লার এবং ফোনের জন্য হট অ্যাপ স্টার্ট-আপ কর্মক্ষমতা পরীক্ষা।
catbox-performance-hot-app-start-up-mediacenter মিডিয়া সেন্টারের জন্য হট অ্যাপ স্টার্ট-আপ কর্মক্ষমতা পরীক্ষা।
catbox-performance-hot-app-start-up-settings সেটিংসের জন্য হট অ্যাপ স্টার্ট-আপ কর্মক্ষমতা পরীক্ষা।
catbox-performance-jank-appgrid Appgrid জন্য কর্মক্ষমতা পরীক্ষা.
catbox-performance-jank-contact-list পরিচিতি জন্য কর্মক্ষমতা পরীক্ষা.
catbox-performance-jank-media মিডিয়া জন্য কর্মক্ষমতা পরীক্ষা.
catbox-performance-jank-media-switch-playback মিডিয়া সুইচ প্লেব্যাকের জন্য কর্মক্ষমতা পরীক্ষা.
catbox-performance-jank-notifications বিজ্ঞপ্তি জন্য কর্মক্ষমতা পরীক্ষা.
catbox-performance-jank-settings সেটিংসের জন্য কর্মক্ষমতা পরীক্ষা।
catbox-performance-switch-to-existing-user একটি বিদ্যমান ব্যবহারকারীর সাথে স্যুইচ করতে লেটেন্সি পরিমাপ করুন।

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

মাল্টি-ডিভাইস হোস্ট সাইড টেস্টের সঞ্চালন একটি সেশনে পরীক্ষা চালানোর জন্য CATBox ব্যবহার করে। উদাহরণস্বরূপ, BTDiscoveryTest :

make catbox
./tools/catbox-tradefed run commandAndExit catbox-functional-bluetooth-tests --{phone}serial <serial> --{auto}serial <serial> --mobly-host:mobly-par-file-name BTDiscoveryTest

CATBox apk ইনস্টল করে এবং তারপর পরীক্ষাটি সঠিক পাইথন এক্সিকিউশন পরিবেশে চালানো হয়।

CATBox পরীক্ষার ফলাফল পর্যালোচনা করুন

ফাংশনাল এবং পারফরম্যান্স টেস্ট রানের ফলাফল android-catbox/results/latest এ সংরক্ষিত হয়।

ফলাফলের ধরন অবস্থান
পরীক্ষার ফলাফল test_result.xml
ব্যর্থতার পরীক্ষার বিবরণ test_result_failures_suite.html
কর্মক্ষমতা মেট্রিক্স ফলাফল /report-log-files/CatboxPerformanceTests.reportlog.json
কার্যকরী এবং কর্মক্ষমতা পরীক্ষা রান /android-catbox/logs/latest