בדרך כלל, בדיקת GoogleTest (GTest, שנקראת לפעמים גם 'בדיקות מקוריות') של הפלטפורמה ניגשת ל-HAL ברמה נמוכה יותר או מבצעת IPC גולמי מול שירותי מערכת שונים. לכן, גישת הבדיקה בדרך כלל מוצמדת השירות בבדיקה.
כדי לשלב את תשתית הבדיקה הרציפה, פיתוח בדיקות GTest שלך באמצעות GTest .
דוגמאות
לפניכם כמה דוגמאות של GTest במקור הפלטפורמה:
סיכום השלבים
פועלים לפי ההוראות לדוגמה של מודול GTest.
כדי לכלול באופן אוטומטי יחסי תלות של GTest, משתמשים בפונקציה
BUILD_NATIVE_TEST
כלל build בתצורה של מודול הבדיקה שלך.צריך לפתח את מודול הבדיקה באמצעות
mmm
לגרסאות build מצטברות, אוmma
כדי לקבל גרסה מלאה יוצר:make hwui_unit_tests -j
מריצים את הבדיקה באופן מקומי באמצעות 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
מריצים את הבדיקה באמצעות מסגרת הבדיקה של 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_tests
מפעילים את GTest ומפעילים את הבדיקה על ידי הפעלת הקובץ הבינארי לבדיקה במכשיר:
adb shell /data/nativetest/hwui_unit_tests/hwui_unit_tests
למידע נוסף על התאמה אישית של ביצוע הבדיקה, צריך להוסיף את
--help
לקובץ הבינארי לבדיקה. מידע נוסף על פרמטרים זמין במדריך המתקדם של GTest.