ভেন্ডর টেস্ট স্যুট (VTS) ও ইনফ্রাস্ট্রাকচার

Android ভেন্ডর টেস্ট স্যুট (VTS) নিম্নলিখিত বিষয়গুলির ব্যাপক পরীক্ষা প্রদান করে:

  • কার্নেল
  • হার্ডওয়্যার অ্যাবস্ট্রাকশন লেয়ার (HAL)

VTS একটি ডেস্কটপ মেশিনে রান করে এবং অ্যাটাচ করা ডিভাইস বা ইমুলেটরে সরাসরি টেস্ট কেস এক্সিকিউট করে। CTS-এর মতো, VTS হল একটি অটোমেটেড টেস্ট স্যুট যা নিম্নলিখিত প্রধান সফ্টওয়্যার কম্পোনেন্ট ব্যবহার করে:

  • VTS ট্রেড ফেডারেশন টেস্ট হারনেস আপনার হোস্ট মেশিনে রান করে এবং টেস্ট এক্সিকিউশন ম্যানেজ করে। এটি পরীক্ষা (DUT) চলাকালীন একাধিক ডিভাইসে শার্ডিং কনফিগার করার সুবিধা দেয়। এছাড়াও, আপনি স্যুট আবার চেষ্টা করুন ফিচার ব্যবহার করে সম্পূর্ণ টেস্ট স্যুটের পরিবর্তে শুধুমাত্র ব্যর্থ হওয়া টেস্ট আবার চেষ্টা করতে পারেন, যা আবার রান করার সময়কে অনেক কমিয়ে দেয়।
  • DUT-তে স্বতন্ত্র টেস্ট কেস চালানো হয়। টেস্ট কেসগুলি GTest-স্টাইল টেস্ট, কার্নেল টেস্ট বা JUnit-স্টাইল টেস্ট হতে পারে যা Java-তে লেখা হয়।

পরীক্ষার ধরন

নিচের বিভাগে বিভিন্ন ধরনের VTS পরীক্ষা সম্পর্কে বর্ণনা করা হয়েছে।

GTest-স্টাইল টেস্ট

VTS-এর বেশিরভাগ টেস্ট হল GTest-স্টাইলের টেস্ট যা HAL ইমপ্লিমেন্টেশন চেক করে। পরীক্ষাটি C++-এ লেখা এবং ডিভাইসে চলে। একটি সাধারণ VTS GTest প্রদত্ত ইন্টারফেসের প্রতিটি ইনস্ট্যান্সের মাধ্যমে পুনরাবৃত্তি করে এবং এর বিরুদ্ধে সমস্ত টেস্ট কেস রান করে। উদাহরণ দেখতে VtsHalHealthStorageV1_0TargetTest লিঙ্কে যান।

Linux কার্নেল টেস্ট

  • Kselftest (external/linux-kselftest) হল Linux কার্নেল রিপোজিটরির মধ্যে অন্তর্ভুক্ত পরীক্ষার একটি সংগ্রহ যা tools/testing/selftests-এ আছে, এর মধ্যে ২৩টি VTS-এ অন্তর্ভুক্ত করা হয়েছে যা ARM-এ রান করে।

  • Linux Test Project (external/ltp) পরীক্ষাগুলি Linux কার্নেলের নির্ভরযোগ্যতা, দৃঢ়তা এবং স্থিতিশীলতা যাচাই করে।

JUnit-স্টাইল টেস্ট

VTS-এ হোস্ট-পরিচালিত পরীক্ষার একটি ছোট সেট হল JUnit-স্টাইলের পরীক্ষা, যেমন, KernelApiSysfsTest। Java টেস্টগুলি BaseHostJUnit4Test হিসেবে প্রয়োগ করা হয়, যা একটি টেস্ট ডিভাইসের সাথে যুক্ত এবং যাচাইকরণ পারফর্ম করতে শেল কমান্ড চালাতে পারে।

স্ট্যান্ডঅ্যালোন Python3 টেস্ট

কিছু VTS টেস্ট, যেমন vts_treble_sys_prop_test Python3-এ লেখা হয়। Python-ভিত্তিক পরীক্ষাগুলি unittest.TestCase হিসেবে প্রয়োগ করা হয় এবং প্রতিটি পরীক্ষা কেস শেল কমান্ডের মাধ্যমে ডিভাইসের সাথে ইন্টার‍্যাক্ট করতে পারে।