Mulai 27 Maret 2025, sebaiknya gunakan android-latest-release
, bukan aosp-main
, untuk mem-build dan berkontribusi pada AOSP. Untuk mengetahui informasi selengkapnya, lihat Perubahan pada AOSP.
Penjadwal Perintah Pengujian
Tetap teratur dengan koleksi
Simpan dan kategorikan konten berdasarkan preferensi Anda.
Di Tradefed, setiap permintaan pengujian akan melalui
Penjadwal Perintah
untuk dijalankan. Jadi, Penjadwal Perintah adalah komponen utama harness yang diperlukan untuk
menjalankan pengujian.
Lifecycle
Saat permintaan pengujian ditampilkan ke Tradefed (misalnya, input dari
konsol), permintaan tersebut akan melalui peristiwa berikut sebelum dijalankan:
- Permintaan pengujian diuraikan - Permintaan pengujian biasanya terdiri dari referensi konfigurasi Tradefed XML
yang diikuti dengan opsi.
Misalnya:
> run host --class com.android.tradefed.build.BuildInfoTest
.
- Pengelola Perangkat diminta untuk perangkat yang cocok dengan permintaan pengujian -
Pengelola Perangkat mengalokasikan perangkat
yang cocok dengan permintaan pengujian. Misalnya, jika perangkat Pixel diminta,
Pengelola Perangkat akan mencari perangkat Pixel yang tersedia.
- Permintaan pengujian + perangkat dimulai sebagai pemanggilan - Pengujian dimulai.
- Rilis perangkat - Setelah pemanggilan selesai, perangkat yang dialokasikan akan
dirilis dan dapat dialokasikan untuk pengujian lainnya.
Pemanggilan Tradefed
Pemanggilan di Tradefed mengacu pada saat perintah pengujian sedang dieksekusi.
Perangkat yang disertakan dalam pemanggilan ditandai sebagai allocated
dan tidak dapat digunakan
oleh pengujian lain untuk dijalankan.
TF akan menjalankan langkah-langkah berikut dalam urutan ini:
- Mem-build dan menguji download artefak
- Persiapan target
- Eksekusi pengujian
- Pembersihan target
- Pelaporan hasil
Setiap langkah dijelaskan secara lebih mendetail dalam
bagian Arsitektur.
Konten dan contoh kode di halaman ini tunduk kepada lisensi yang dijelaskan dalam Lisensi Konten. Java dan OpenJDK adalah merek dagang atau merek dagang terdaftar dari Oracle dan/atau afiliasinya.
Terakhir diperbarui pada 2025-07-27 UTC.
[[["Mudah dipahami","easyToUnderstand","thumb-up"],["Memecahkan masalah saya","solvedMyProblem","thumb-up"],["Lainnya","otherUp","thumb-up"]],[["Informasi yang saya butuhkan tidak ada","missingTheInformationINeed","thumb-down"],["Terlalu rumit/langkahnya terlalu banyak","tooComplicatedTooManySteps","thumb-down"],["Sudah usang","outOfDate","thumb-down"],["Masalah terjemahan","translationIssue","thumb-down"],["Masalah kode / contoh","samplesCodeIssue","thumb-down"],["Lainnya","otherDown","thumb-down"]],["Terakhir diperbarui pada 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)."]]