מבחני טלפוניה של ACTS

Android Comms Test Suite (ACTS) מבצעת בדיקות אוטומטיות של ערימות קישוריות, כגון Wi-Fi, Bluetooth ושירותי סלולר. כלי הבדיקה דורש adb . ו-Python, וניתן למצוא אותו tools/test/connectivity/acts .

דף זה מתאר כיצד להפעיל את מבחני הטלפוניה הבסיסיים הזמינים ב- Android Open Source Project (AOSP) עבור משתמש עם שני טלפונים.

דרישות מוקדמות

כדי להריץ מבחני טלפוניה של ACTS, צריכה להיות לך גישה למאגר אנדרואיד מלא ולהתקין בונה של userdebug על המכשירים שברצונך לבדוק.

הורדת מאגר אנדרואיד

עקוב אחר ההוראות בהורדת המקור כדי להוריד מאגר אנדרואיד במחשב בעל חיבור USB למכשירים שברצונך לבדוק.

  • AOSP הוא בסיס קוד מרובה ג'יגה-בייט שממשיך לגדול. התאם את הציפיות שלך לזמני ההורדה בהתאם.
    • אם מכונה מוגבלת בגודל, הוסף --depth=1 לפקודה repo init .
  • כדי לקבל עדכונים עתידיים על כלי ACTS, עבור אל ספריית השורש של אנדרואיד:
    • השתמש repo sync tools/test/connectivity
    • ו- repo sync external/sl4a

אימות userdebug מבוסס על מכשירים

התקן גרסת userdebug של Android במכשירי הבדיקה שלך.

  • בנה את המאגר באמצעות ההוראות בבניית אנדרואיד .
  • הבזק את ההתקן כמתואר בהבהבת התקן .
    • הפקודה adb shell getprop ro.build.type צריכה להחזיר userdebug .
    • אם ro.build.type אינו זמין, בניית userdebug מאפשרת להפעיל את מעטפת ה-adb בתור root (טרמינל # ).

בנייה והתקנה של SL4A

כדי לבנות ולהתקין Scripting Layer עבור Android (SL4A), עקוב אחר ההוראות בשכבת Scripting עבור Android . הסעיף הוספת Builds SL4A ל-Android Builds כברירת מחדל הוא אופציונלי.

לאחר בניית SLA4, הודעת היומן האחרונה מכילה את המיקום של קובץ sl4a.apk , אותו עליך להתקין בכל המכשירים. הנה דוגמה להודעת יומן:

Copy: out/target/path/to/sl4a.apk

הגדרת התקנים לבדיקה

הגדר את ההתקנים באמצעות דרישות הבנייה/כלי ACTS הבאות:

  • אם מפתחות הספק של ADB אינם זמינים, הקש על החלון המוקפץ אמון במחשב הזה ב-DUT כשהוא מופיע. אם מפתחות ספק ADB זמינים:

    • מפתחות ומנהלי התקנים של ספקי ADB חייבים להיות ייחודיים ל-DUT.
    • כדי לאפשר תמיד איתור באגים ב-USB, יש להוסיף את מפתחות ספק ה-ADB בעץ המקור שלך ל- ~/.bashrc (או שווה ערך) באמצעות export ADB_VENDOR_KEYS=/path/to/directory/with/vendor/keys שבו /path/to/directory נמצא הדרך המוסמכת המלאה שלך על המארח. לפתרון בעיות ב-ADB, עיין ב'הפעל יישומים בהתקן חומרה' .
  • אפשר איתור באגים ב-USB: כאשר מנהלי התקנים של adb מותקנים, התקני adb עשויים להפעיל הנחיה במכשיר כדי לאפשר איתור באגים ב-USB.

  • התקן sl4a.apk באמצעות $ adb install -r <ANDROID_ROOT>/path/to/sl4a.apk

  • ודא שהטלפונים משתמשים בחיבור USB 2.0 לשרת הבדיקה.

  • בדיקות אלו תלויות ברשתות סלולריות חיות, אז הכניסו כרטיסי SIM לטלפונים ושמרו את הטלפונים באזור שיש בו שירות סלולרי טוב.

  • הוסף את כל כרטיסי ה-SIM לקובץ .json כמתואר בכתיבת קובץ תצורה .

הקמת הסביבה

לפני הגדרת הסביבה, ודא ש-Python 3.4+ מותקן .

לָרוּץ:

sudo apt-get install python3-setuptools
sudo apt-get install python3-pip
sudo pip3 install --upgrade pip setuptools
sudo apt-get install protobuf-compiler

התקנת ACTS

לָרוּץ:

cd <ANDROID_ROOT>/tools/test/connectivity/acts/framework/
sudo python3 setup.py develop
cd -

כדי לאמת את ההתקנה, הפעל act.py -h , אשר מדפיס רשימה של פקודות זמינות.

כתיבת קובץ תצורה

כדי להפעיל בדיקות, עליך ליצור קובץ עם מידע תצורה. הנה דוגמה לקובץ .config . קובץ דומה זמין במאגר אנדרואיד תחת tools/test/connectivity/acts/framework/sample_config.json . החלף XXXXXXX במספרים סידוריים של המכשיר כדי לספק את המידע המינימלי ש-ACTS צריך כדי להפעיל בדיקת טלפוניה.

{
  "_description": "Minimum Telephony Config",
  "testbed":
  [
      {
          "_description": "A testbed listing two AndroidDevices for adb.",
          "name": "ExampleTestBed",
          "AndroidDevice": [{"serial": "XXXXXXX", "adb_logcat_param": "-b all"},
                            {"serial": "XXXXXXX", "adb_logcat_param": "-b all"}]
      }
  ],
  "logpath": "/path/to/logs",
  "testpaths": "/path/to/android/repo/tools/test/connectivity",
  "sim_conf_file": "/path/to/simcard_list.json"
}

השתמש במקשים בטבלה כדי להגדיר את פרמטרי הבדיקה. עיין באפשרויות תצורה נוספות לאפשרויות נוספות.

מַפְתֵחַ ערך
_description הערה על התוכן של קובץ התצורה כולו
testbed מפרט של סביבה שבדיקות יכולות לרוץ בה
(מבחן) _description הגיבו על כל מיטת בדיקה, מכיוון ש-ACTS יכול למקד למיטות בדיקה בודדות
name (מיטת בדיקה). שם ערכת הבדיקה להתקשרות משורת הפקודה
(מבחן) AndroidDevice רשימה של מכשירים ספציפיים שהבדיקה מכוונת אליהם
הערה: יכולים להיות מספר מכשירים ברשימה. בדיקה שמריצה טלפונים המתקשרים זה לזה מצפה שיהיו שני מכשירים ונכשלת אם יש פחות. אם יש שני מכשירים ברשימה והבדיקה מצפה לאחד בלבד, הבדיקה הזו מופעלת במכשיר הראשון.
(testbed)(AndroidDevice) serial מספר סידורי של המכשיר (מודפס adb devices )
(testbed)(AndroidDevice) adb_logcat_param פרמטרים המועברים כאשר adb logcat נקרא במהלך הבדיקה
logpath המיקום בשרת הבדיקה שבו נשמרים היומנים
testpaths המיקום של קוד מקרה הבדיקה
sim_conf_file המיקום של קובץ .json המפרט כרטיסי SIM זמינים
רשימת כרטיסי ה-SIM כוללת את מזהה הכרטיס, יכולות הכרטיס, מפעיל ומספר טלפון.
{
    "sim-card-ID-here": {
        "capability": [
            "voice",
            "ims",
            "volte",
            "vt",
            "sms",
            "tethering",
            "data"
        ],
        "operator": "tmo",
        "phone_num": "12345678901"
    },
...
}

אתה יכול למשוך את מספר הטלפון מהמכשיר תחת מערכת > מידע על הטלפון . מזהה כרטיס ה-SIM מודפס בדרך כלל על כרטיס ה-SIM, או זמין מהמכשיר תחת מערכת > מידע על הטלפון > מצב SIM . מחרוזת האופרטור מוגדרת ב- tools/test/connectivity/acts_tests/acts_contrib/test_utils/tel/tel_defines.py , ואז חפש CARRIER_ .

אפשרויות תצורה נוספות

לקובץ entries.py הממוקם ב- tools/test/connectivity/acts/framework/acts/config/entries.py במאגר אנדרואיד יש הגדרות לאפשרויות התצורה העיקריות של שורת הפקודה.

אתה יכול גם למצוא פרמטרים ספציפיים לבדיקה בקוד על ידי חיפוש של self.user_params.get .

הפעלת בדיקות

הפעל בדיקות משורת הפקודה לאחר כתיבת קובץ התצורה. אמנם יש אפשרויות רבות, הפשוטה ביותר היא שימוש -c filename.config -tc TestCase:name . דוגמה זו משתמשת בקובץ תצורה בשם minimum.config :

act.py -c minimum.config -tc TelLiveVoiceTest:test_call_mo_voice_general

לריצת בדיקה מוצלחת צריכה להיות הודעת פלט סופית כזו:

INFO Summary for test run ExampleTestBed@yyyy-mm-dd_15-23-43-614: Requested 1,
Executed 1, Passed 1, Failed 0, Skipped 0, Error 0

הפעלת מספר בדיקות

כדי להפעיל מקרי בדיקה ספציפיים על פני מספר קבצים, צור קובץ בדיקה והעביר אותו עם הדגל -tf , כפי שמוצג בחבילת בדיקות הרגרסיה לדוגמה למטה.

TelLiveVoiceTest:
test_call_mo_voice_general,
test_call_volte_to_volte,
test_call_3g_to_3g

TelLiveDataTest:
test_airplane_mode,
test_4g,
test_3g

TelLiveSmsTest:
test_sms_mo_4g,
test_sms_mt_4g,
test_sms_mo_3g,
test_sms_mt_3g,
test_mms_mo_4g,
test_mms_mt_4g

פקודה זו לדוגמה מניחה שהקובץ נקרא regression_suite.

act.py -c minimum.config -tf regression_suite

הפעלת בדיקות מספר פעמים

כדי להריץ מקרה בדיקה ( -tc ) או קובץ בדיקה ( -tf ) מספר פעמים, הוסף -ti # (איטרציות בדיקה) לפקודה.