ספק בדיקת ספקים (VTS) ותשתיות

חבילת Test Vendor Android 11 Vendor (VTS) מספקת בדיקות מקיפות על הדברים הבאים:

  • גַרעִין
  • שכבת הפשטת חומרה (HAL)

VTS פועל במחשב שולחני ומבצע תיקי בדיקה ישירות בהתקנים מחוברים או על אמולטורים. בדומה CTS , VTS היא חבילת בדיקות אוטומטית המשתמשת ברכיבי התוכנה הגדולים הבאים.

  • VTS פדרציית הסחר רתמה מבחן פועל על המחשב המארח שלך ומנהלת ביצוע הבדיקה. הוא מציע את יכולת Configure Sharding על פני מספר מכשירים נבדק (DUTs). אתה יכול גם להשתמש Suite נסה שנית התכונה לנסות שוב רק את הכישלונות ולא סוויטות הבדיקה כולה, אשר מקטינה באופן משמעותי את הזמן לרוץ מחדש.
  • מקרי בדיקה בודדים מבוצעים ב- DUT. מקרי הבדיקה יכולים להיות בדיקות בסגנון gtest, בדיקות גרעין או בדיקות בסגנון JUnit שנכתבו ב- Java.

סוגי בדיקות

מבחנים בסגנון gtest

רוב הבדיקות ב- VTS הן בדיקות בסגנון gtest הבודקות את יישום HAL. הבדיקה כתובה ב- C ++ ופועלת במכשיר. מבחן VTS טיפוסי חוזר על עצמו בכל מופע של ממשק נתון ומריץ נגדו את כל תיקי הבדיקה. עיין VtsHalHealthStorageV1_0TargetTest עבור דוגמה.

בדיקות ליבה של לינוקס

  • Kselftest ( חיצוני / linux-kselftest ) הוא אוסף של בדיקות כלולים בתוך מאגר הקרנל לינוקס בבית tools/testing/selftests , מתוכם 23 כלולים ב- VTS לרוץ על ARM.

  • לינוקס מבחן הפרויקט ( חיצוני / LTP ) בדיקות לאמת את אמינות, יציבות, ויציבות של הקרנל לינוקס.

מבחנים בסגנון JUnit

קבוצה קטנה של בדיקות מונחות מארח VTS היא בדיקות JUnit בסגנון, למשל, KernelApiSysfsTest . הבדיקות Java מיושמים כמו BaseHostJUnit4Test , המהווה שותף עם מכשיר הבדיקה יכול להריץ פקודות מעטפת לבצע אימות.

בדיקות Python3 עצמאיות

כמה בדיקות VTS, כגון vts_treble_sys_prop_test כתובים Python3. הבדיקות מבוססי Python מיושמים כמו unittest.TestCase וכל מקרה מבחן יכול לקיים אינטראקציה עם המכשיר באמצעות פקודות מעטפת.