החל מ-27 במרץ 2025, מומלץ להשתמש ב-android-latest-release
במקום ב-aosp-main
כדי ליצור תרומות ל-AOSP. מידע נוסף זמין במאמר שינויים ב-AOSP.
מתזמן פקודות לבדיקה
קל לארגן דפים בעזרת אוספים
אפשר לשמור ולסווג תוכן על סמך ההעדפות שלך.
ב-Tradefed, כל בקשת בדיקה עוברת דרך Command Scheduler כדי להריץ אותה. לכן, מתזמן הפקודות הוא רכיב מרכזי בערכת הכלי שנדרשת להרצת בדיקות.
מחזור חיים
כשבקשת בדיקה מוצגת ל-Tradefed (לדוגמה, קלט מהמסוף), היא עוברת את האירועים הבאים לפני שהיא מופעלת:
- הבקשה לבדיקה עוברת ניתוח – בקשת בדיקה מורכבת בדרך כלל מהפנייה להגדרות של Tradefed ב-XML, ואחריה האפשרויות.
לדוגמה:
> run host --class com.android.tradefed.build.BuildInfoTest
- Device Manager מבקש מכשירים שתואמים לבקשת הבדיקה – Device Manager מקצה מכשיר שתואמת לבקשות הבדיקה. לדוגמה, אם מבקשים מכשיר Pixel, מנהל המכשירים יחפש מכשיר Pixel זמין.
- Test request + device(s) starts as an invocation – הבדיקה מתחילה.
- שחרור המכשיר – בסיום ההפעלה, המכשיר שהוקצה ישוחרר ותוכלו להקצות אותו לבדיקות אחרות.
הפעלה של Tradefed
קריאה ב-Tradefed מתייחסת למצב שבו פקודת בדיקה פועלת כרגע.
מכשירים שכלולים בקריאה מסומנים בתור allocated
ולא ניתן להשתמש בהם להרצה של בדיקות אחרות.
TF יבצע את השלבים הבאים לפי הסדר הזה:
- הורדה של ארטיפקטים לצורך פיתוח ובדיקה
- הכנת היעד
- ביצוע בדיקה
- ניקוי טירגוט
- דיווח על תוצאות
כל שלב מפורט בהרחבה בקטע 'ארכיטקטורה'.
דוגמאות התוכן והקוד שבדף הזה כפופות לרישיונות המפורטים בקטע רישיון לתוכן. Java ו-OpenJDK הם סימנים מסחריים או סימנים מסחריים רשומים של חברת Oracle ו/או של השותפים העצמאיים שלה.
עדכון אחרון: 2025-07-27 (שעון UTC).
[[["התוכן קל להבנה","easyToUnderstand","thumb-up"],["התוכן עזר לי לפתור בעיה","solvedMyProblem","thumb-up"],["סיבה אחרת","otherUp","thumb-up"]],[["חסרים לי מידע או פרטים","missingTheInformationINeed","thumb-down"],["התוכן מורכב מדי או עם יותר מדי שלבים","tooComplicatedTooManySteps","thumb-down"],["התוכן לא עדכני","outOfDate","thumb-down"],["בעיה בתרגום","translationIssue","thumb-down"],["בעיה בדוגמאות/בקוד","samplesCodeIssue","thumb-down"],["סיבה אחרת","otherDown","thumb-down"]],["עדכון אחרון: 2025-07-27 (שעון UTC)."],[],[],null,["# Test Command Scheduler\n\nIn Tradefed, every single test request goes through the\n[Command Scheduler](https://android.googlesource.com/platform/tools/tradefederation/+/refs/heads/android16-release/src/com/android/tradefed/command/CommandScheduler.java)\nto be run. So the Command Scheduler is a key component of the harness needed to\nrun tests.\n\nLifecycle\n---------\n\nWhen a test request is presented to Tradefed (for example, input from the\nconsole), it will go through the following events before being run:\n\n1. *Test request is parsed* - A test request is usually composed of an XML Tradefed configuration reference followed by options. For example: `\u003e run host --class com.android.tradefed.build.BuildInfoTest`\n2. *Device Manager is requested for device(s) matching the test request* - Device Manager [allocates a device](/docs/core/tests/tradefed/architecture/device-manager/device-allocation) that matches the test requests. For example, if a Pixel device is requested then Device Manager will look for an available Pixel device.\n3. *Test request + device(s) starts as an invocation* - Testing is starting.\n4. *Device release* - Once the invocation is finished, the device allocated will be released and can be allocated for other tests.\n\nTradefed invocation\n-------------------\n\nAn invocation in Tradefed refers to when a test command is currently executing.\nDevices included in the invocation are marked as `allocated` and cannot be used\nby other tests to run.\n\nTF will execute the following steps in this order:\n\n1. [Build and test artifacts download](/docs/core/tests/tradefed/architecture/build-provider)\n2. [Target preparation](/docs/core/tests/tradefed/architecture/target-preparer)\n3. [Test execution](/docs/core/tests/tradefed/architecture/advanced/test-runner)\n4. [Target clean up](/docs/core/tests/tradefed/architecture/target-preparer)\n5. [Result reporting](/docs/core/tests/tradefed/architecture/result-reporter)\n\nEach step is described in more detail within the\n[Architecture section](/docs/core/tests/tradefed/architecture)."]]