GoogleTest (GTest، که گاهی اوقات «آزمایشهای بومی» نیز نامیده میشود) برای پلاتفرم معمولاً به HALهای سطح پایینتر دسترسی پیدا میکند یا IPC خام را دربرابر سرویسهای مختلف سیستم اجرا میکند. بههمین دلیل، رویکرد آزمایش معمولاً با سرویس تحت آزمایش پیوند تنگاتنگی دارد.
برای ادغام با زیرساخت آزمایش مداوم، GTest خود را بااستفاده از چارچوب GTest بسازید.
مثالها
در اینجا چند نمونه از GTest در منبع پلاتفرم آورده شده است:
خلاصه مراحل
راهاندازی واحد GTest نمونه را دنبال کنید.
برای افزودن خودکار وابستگیهای GTest، از
BUILD_NATIVE_TESTقانون ساخت در پیکربندی واحد آزمایشی خود استفاده کنید.پیکربندی آزمایشی را با پیروی از نمونههای گزینههای ساده و پیچیده بنویسید.
واحد آزمایشی را با
mmmبرای ساختهای افزایشی، یاmmaبرای ساختهای کامل بسازید:make hwui_unit_tests -jآزمایش را بهصورت محلی بااستفاده از Atest اجرا کنید:
atest hwui_unit_testsهمچنین میتوانید آرگومانهایی به GTest خود اضافه کنید. آرگومانهای زیر بهویژه مفید هستند:
-
native-test-flagمقادیر پرچم اضافی را برای ارسال به فرمان پوسته GTest مشخص میکند. native-test-timeoutمقدار زمان اتمام آزمایش را به میکروثانیه مشخص میکند.کد نمونه زیر از هر دو این آرگومان استفاده میکند:
atest test-name -- --module-arg test-name:native-test-flag:"\"argument1 argument2\"" \ --module-arg test-name:native-test-timeout:60000
-
آزمایش را با ابزار آزمایش «فدراسیون تجارت» اجرا کنید:
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 مراجعه کنید.