GoogleTest

GoogleTest (GTest, נקרא גם לפעמים "בדיקות מקוריות") עבור הפלטפורמה בדרך כלל ניגש ל-HALs ברמה נמוכה יותר או מבצע IPC גולמי כנגד שירותי מערכת שונים. בגלל זה, גישת הבדיקה בדרך כלל מחוברת באופן הדוק לשירות הנבדק.

כדי להשתלב עם תשתית בדיקה מתמשכת, בנה את GTests שלך באמצעות מסגרת 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. הפעל את הבדיקה עם רתמת הבדיקה של Federation המסחר:

    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 .