בדיקת Google

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

כדי לשלב את תשתית הבדיקה הרציפה, פיתוח בדיקות GTest שלך באמצעות GTest .

דוגמאות

לפניכם כמה דוגמאות של GTest במקור הפלטפורמה:

סיכום השלבים

  1. פועלים לפי ההוראות לדוגמה של מודול GTest.

  2. כדי לכלול באופן אוטומטי יחסי תלות של GTest, צריך להשתמש בפונקציה BUILD_NATIVE_TEST כלל build בתצורה של מודול הבדיקה שלך.

  3. כותבים הגדרה לבדיקה לפי הדוגמאות להגדרה פשוטה ומורכבות.

  4. צריך לפתח את מודול הבדיקה באמצעות mmm לגרסאות build מצטברות, או mma כדי לקבל גרסה מלאה יוצר:

    make hwui_unit_tests -j
    
  5. מריצים את הבדיקה באופן מקומי באמצעות 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
      
  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.