گوگل تست

یک GoogleTest (GTest، که گاهی اوقات "تست‌های بومی" نیز نامیده می‌شود) برای پلتفرم معمولاً به HAL‌های سطح پایین‌تر دسترسی دارد یا IPC خام را در برابر سرویس‌های مختلف سیستم انجام می‌دهد. به همین دلیل، رویکرد آزمایش معمولاً با سرویس تحت آزمایش همراه است.

برای ادغام با زیرساخت آزمایش مداوم، GTest های خود را با استفاده از چارچوب GTest بسازید.

نمونه ها

در اینجا چند نمونه از GTest در منبع پلتفرم آورده شده است:

خلاصه مراحل

  1. نمونه راه اندازی ماژول GTest را دنبال کنید.

  2. برای گنجاندن خودکار وابستگی‌های GTest، از قانون ساخت BUILD_NATIVE_TEST در پیکربندی ماژول آزمایشی خود استفاده کنید.

  3. با دنبال کردن مثال‌های گزینه‌های ساده و پیچیده ، یک پیکربندی آزمایشی بنویسید.

  4. ماژول تست را با mmm برای ساخت های افزایشی یا mma برای ساخت های کامل بسازید:

    make hwui_unit_tests -j
    
  5. تست را به صورت محلی با استفاده از Atest اجرا کنید:

      atest hwui_unit_tests
    

    همچنین می توانید آرگومان هایی را به GTests خود اضافه کنید. به ویژه استدلال های زیر مفید هستند:

    • 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
      
  6. تست را با مهار تست فدراسیون تجارت انجام دهید:

    make tradefed-all -j
    tradefed.sh run template/local_min --template:map test=hwui_unit_tests
    
  7. به صورت دستی نصب و اجرا کنید:

    1. باینری آزمایشی تولید شده را روی دستگاه خود فشار دهید:

       adb push ${OUT}/data/nativetest/hwui_unit_tests/hwui_unit_tests \
       /data/nativetest/hwui_unit_tests/hwui_unit_tests
      
    2. GTest را راه اندازی کنید و با فراخوانی تست باینری روی دستگاه، تست را اجرا کنید:

       adb shell /data/nativetest/hwui_unit_tests/hwui_unit_tests
      

      برای اطلاعات بیشتر در مورد سفارشی کردن اجرای تست، پارامتر --help را به باینری تست خود اضافه کنید. برای اطلاعات بیشتر در مورد پارامترها، به راهنمای پیشرفته GTest مراجعه کنید.