זהו מדריך להרצת בדיקות של Android Comms Test Suite (ACTS).
קבל את הקוד
הגרסה העדכנית ביותר של ACTS מופיעה במאגר Gerrit של Android Open Source Project (AOSP) בכתובת /platform/tools/test/connectivity/
.
פרטים על סנכרון הקוד מופיעים במאמר הורדת קוד המקור ובCodelab למפתחי Android. כשמסנכרנים את הקוד, מסנכרנים את ההסתעפות הראשית. לא מסנכרנים גרסה זמינה (build) עם תג.
חשוב לזכור: כשמורידים את ACTS, אין צורך לסנכרן את כל המאגר של Android. כדי לסנכרן רק ACTS, לאחר הרצת הפקודה repo init
, מריצים את:
repo sync platform/tools/test/connectivity
אפשר למצוא את ACTS בקטע <repo>/tools/test/connectivity/acts/
.
הגדרת הסביבה
כדי לוודא של-ACTS יש את יחסי התלות הנדרשים להגדרה, צריך להתקין את כלי ההגדרה הבאים של Python 3:
sudo apt-get install python3-setuptools
sudo apt-get install python3-pip
sudo apt-get install adb fastboot
sudo pip3 install --upgrade pip setuptools # Needed due to an on-going bug.
sudo apt-get install protobuf-compiler
התקנת ACTS
הסקריפט setup.py
שנמצא ב-<repo>/tools/test/connectivity/acts/framework
מתקין את שאר יחסי התלות ואת ACTS עצמו.
כדי לפתח רציף ב-ACTS או בשילוב עם ACTS, מריצים את הפקודה הבאה:
cd <repo>/tools/test/connectivity/acts/framework/
sudo python3 setup.py develop
cd -
אם רוצים להריץ רק בדיקות, אפשר להריץ את הפקודה הבאה:
cd <repo>/tools/test/connectivity/acts/framework/
sudo python3 setup.py install
cd -
אימות ההתקנה
אחרי ההגדרה, מוודאים שאפשר להשתמש ב-act.py
בטרמינל ולייבא מודולים של ACTS ב-Python. לדוגמה:
act.py -h usage: act.py [-h] -c <PATH> [--test_args Arg1 Arg2 ... ]
python3 >>> from acts.controllers import android_device >>> device_list = android_device.get_all_instances()
הפעלה ללא התקנה
המשתמשים יכולים להפעיל את ACTS בלי להתקין את החבילה ישירות. השלב היחיד שצריך לבצע הוא לשנות את נתיב Python לייבוא מ-<repo>/tools/test/connectivity/acts/framework
. לפני שמריצים את ACTS, מריצים את setup.py install_deps
כדי להתקין את כל יחסי התלות הנדרשים ל-ACTS בלי להתקין את ACTS. אם יש במכונה גרסה קיימת של ACTS, מריצים את הפקודה sudo setup.py uninstall
.
כדי להריץ את ACTS, משתמשים באחת מהפקודות הבאות:
cd <repo>/tools/test/connectivity/acts/framework; acts/bin/act.py
export PYTHONPATH=<repo>/tools/test/connectivity/acts/framework; acts/bin/act.py
ACTS מפיק הודעות עם בקשות לסימונים -c
ו--tc
. למידע נוסף, ראו הגדרת בדיקות ACTS.
הגדרת ACTS בסביבה וירטואלית
כדי לבודד את ההתקנה שלכם מהתקנות אחרות של ACTS, מומלץ להתקין את ACTS בסביבה וירטואלית. ההנחה בשלבים הבאים היא שיש לכם את acts_test.zip
מ-aosp-main
ב-ci.android.com או גישה ישירה למקור.
קבלת ACTS.
גרסאות build מתפרסמות. מידע נוסף זמין במאמר Android Continuous Integration. אפשר למשוך קובצי zip מ-build ב-ci.android.com. מחפשים את היעד
test_suites_x86_64
.הקובץ
acts_test.zip
נמצא בכרטיסייה Artifacts (פריטי מידע שנוצרו מפגישה ב-Meet). לצורך הדוגמה הזו, נניח שהורדתם אתacts_test.zip
אל/tmp/acts_test.zip
.אם יש לכם גישה לקוד המקור, תוכלו להשתמש בו במקום זאת.
מתקינים את
virtualenv
במחשב.אם עדיין לא התקנתם את האפליקציה, אפשר להתקין את
virtualenv
באמצעות:python3 -m pip install -U --user virtualenv
יוצרים ומפעילים את הסביבה הווירטואלית (ב-
/tmp/my_virtualenv
בדוגמה הזו). כך מוודאים שהחבילות החדשות מותקנות בספרייהvirtualenv
.python3 -m virtualenv /tmp/my_virtualenv
source /tmp/my_virtualenv/bin/activate
מתקינים את ACTS. מריצים את הפקודה הבאה.
unzip /tmp/acts_test.zip -d /tmp/my_virtualenv/acts
cd /tmp/my_virtualenv/acts/tools/test/connectivity/acts/framework/
python3 setup.py install
אם יש לכם גישה ישירה לקוד, אפשר לדלג על חילוץ הקובץ:
cd /path/to/acts/framework
python3 setup.py install
הרצת ACTS מכל מקום.
act.py -c <config> ...
בסיום הרצת הבדיקות, צריך לצאת מהסביבה הווירטואלית.
deactivate
איך מבצעים איפוס (Flash) של מכשיר Android (אופציונלי)
כדי לקבל הרשאות מערכת לשלוט במכשיר, צריך לבצע איפוס (flash) של המכשיר באמצעות build של userdebug
.
כדי לבצע את העדכון, משתמשים ב-Android Flash Tool (flash.android.com/). מידע נוסף זמין במסמכי העזרה של Android Flash Tool.
התקנת SL4A (אופציונלי, מומלץ)
אם אתם משתמשים במכשיר עם גרסה userdebug
, תוכלו לקבל שליטה בהרשאות המערכת של המכשיר באמצעות SL4A. אם בבדיקה לא נעשה שימוש ב-SL4A במכשיר, אפשר להגדיר את הדגל skip_sl4a
בתצורה של ACTS כדי להשבית את התכונה.
"AndroidDevice": [{"serial": "standardized serial number reference", "skip_sl4a": true}, ...]
כדי לקבל את קובץ ה-APK של SL4A, פועלים לפי ההוראות במאמר Scripting Layer for Android.