প্ল্যাটফর্মের জন্য GoogleTest (GTest, কখনও কখনও "নেটিভ টেস্ট" বলা হয়) সাধারণত নিম্ন-স্তরের HAL অ্যাক্সেস করে বা বিভিন্ন সিস্টেম পরিষেবার বিরুদ্ধে কাঁচা IPC পারফর্ম করে। এই কারণে, টেস্টিং পদ্ধতি সাধারণত যে পরিষেবা টেস্ট করা হচ্ছে তার সাথে ঘনিষ্ঠভাবে যুক্ত থাকে।
নিরবচ্ছিন্ন টেস্টিং পরিকাঠামোর সাথে ইন্টিগ্রেট করতে, GTest ফ্রেমওয়ার্ক ব্যবহার করে আপনার GTests তৈরি করুন।
উদাহরণ
প্ল্যাটফর্ম সোর্সে GTest-এর কিছু উদাহরণ এখানে দেওয়া হল:
ধাপের সারসংক্ষেপ
GTest মডিউল সেট-আপের উদাহরণ অনুসরণ করুন।
GTest ডিপেন্ডেন্সি অটোমেটিক যোগ করতে, আপনার টেস্ট মডিউল কনফিগারেশনে
BUILD_NATIVE_TESTবিল্ড রুল ব্যবহার করুন।সহজ ও জটিল বিকল্পের উদাহরণ অনুসরণ করে একটি টেস্ট কনফিগারেশন লেখো।
ইনক্রিমেন্টাল বিল্ডের জন্য
mmmঅথবা সম্পূর্ণ বিল্ডের জন্যmmaব্যবহার করে টেস্ট মডিউল তৈরি করুন:make hwui_unit_tests -jAtest ব্যবহার করে লোকালি টেস্ট চালান:
atest hwui_unit_testsএছাড়াও, আপনি GTests-এ আর্গুমেন্ট যোগ করতে পারবেন। নিম্নলিখিত আর্গুমেন্টগুলি বিশেষভাবে উপযোগী:
native-test-flagGTest শেল কমান্ডে পাস করার জন্য অতিরিক্ত ফ্ল্যাগ ভ্যালু নির্দিষ্ট করে।native-test-timeoutমাইক্রোসেকেন্ডে টেস্টের টাইমআউট ভ্যালু নির্দিষ্ট করে।নিচের উদাহরণ কোডে এই দুটি আর্গুমেন্টই ব্যবহার করা হয়েছে:
atest test-name -- --module-arg test-name:native-test-flag:"\"argument1 argument2\"" \ --module-arg test-name:native-test-timeout:60000
Trade Federation টেস্ট হার্নেস দিয়ে পরীক্ষা চালান:
make tradefed-all -j tradefed.sh run template/local_min --template:map test=hwui_unit_testsম্যানুয়ালি ইনস্টল ও রান করুন:
আপনার ডিভাইসে জেনারেট করা টেস্ট বাইনারি পুশ করুন:
adb push ${OUT}/data/nativetest/hwui_unit_tests/hwui_unit_tests \ /data/nativetest/hwui_unit_tests/hwui_unit_testsGTest লঞ্চ করুন এবং ডিভাইসে টেস্ট বাইনারি ইনভোক করে টেস্ট এক্সিকিউট করুন:
adb shell /data/nativetest/hwui_unit_tests/hwui_unit_testsটেস্ট এক্সিকিউশন কাস্টমাইজ করা সম্পর্কে আরও তথ্য পেতে, আপনার টেস্ট বাইনারিতে
--helpপ্যারামিটার যোগ করুন। প্যারামিটার সম্পর্কে আরও জানতে, GTest অ্যাডভান্সড গাইড দেখুন।