Stasiun Pengujian Android OmniLab

ATS OmniLab adalah alat pengujian yang dapat digunakan oleh developer dan engineer pengujian Android menggunakan antarmuka pengguna untuk menjalankan rangkaian pengujian Android standar, seperti Compatibility Test Suite (CTS) Android. Alat ini bertindak sebagai antarmuka web untuk berbagai kerangka kerja pengujian, seperti Federasi Perdagangan (TF) dan Google Mobly, yang memungkinkan Anda menjalankan CTS dan pengujian multiperangkat pada serangkaian perangkat pengujian dengan penyiapan minimal, serta pengujian menetapkan jadwal untuk terus menjalankan pengujian.

Menyiapkan ATS OmniLab

Bagian ini menjelaskan cara menginstal dan menyiapkan ATS OmniLab.

ATS OmniLab menggunakan kode sumber dari lokasi berikut:

Menginstal OmniLab ATS

Ikuti persyaratan hardware dan software untuk rangkaian pengujian yang Anda jalankan.

Persyaratan untuk CTS dapat ditemukan di source.android.com.

Tidak ada persyaratan hardware tambahan untuk ATS OmniLab, tetapi sebaiknya menggunakan persyaratan host CTS sebagai titik awal.

Ada dua cara untuk menginstal ATS OmniLab:

Menginstal dengan program penginstal

Pada Ubuntu 20.04+, program {i>installer<i} menginstal dan mengkonfigurasi semua program dan resource yang diperlukan untuk menjalankan ATS OmniLab.

Untuk menggunakan program penginstalan:

  1. Jalankan program penginstal:

    curl https://storage.googleapis.com/android-mtt.appspot.com/prod/install.sh | bash
    
  2. Jalankan mtt version untuk memeriksa versi CLI ATS OmniLab yang terinstal.

Pasang secara manual

Instal Docker
  1. Ikuti petunjuk untuk menginstal Docker Community Edition (CE) di komputer Linux Anda.

  2. Ikuti langkah-langkah pasca-penginstalan untuk mengelola Docker sebagai pengguna non-root.

  3. Anda mungkin perlu memulai ulang jendela terminal atau logout dan login lagi agar perubahan izin berlaku.

Instal Python 3

OmniLab ATS CLI diverifikasi terhadap Python versi 3.7 hingga 3.11.

Untuk Ubuntu 16.04 atau yang lebih lama, pertama-tama tambahkan repositori untuk Python 3 dengan melakukan satu dari yang berikut ini:

  • Jalankan perintah ini:

    sudo add-apt-repository ppa:deadsnakes/ppa
    
  • Membangun dan menginstal repositori dari sumber.

Untuk menginstal Python 3, jalankan perintah berikut:

sudo apt-get update
sudo apt install python3 python3-distutils

Untuk menginstal versi Python 3 tertentu (misalnya, 3.10), jalankan perintah berikut sebagai gantinya:

sudo apt-get update
sudo apt install python3.10 python3.10-distutils

Mendapatkan ATS CLI OmniLab

Download paket antarmuka command line (CLI) di sini.

Memulai ATS OmniLab

Mulai OmniLab ATS dengan perintah berikut:

mtt start

Saat pertama kali dimulai, mungkin perlu waktu beberapa menit hingga UI muncul. CLI menampilkan URL web untuk mengakses UI di browser. Secara {i>default<i}, URL web adalah localhost:8000. Jika diperlukan, Anda dapat mengubah porta {i>default<i} saat startup dengan flag --port.

Jika versi yang lebih baru tersedia, Anda dapat mengupdate ke versi saat ini. Anda dapat baca Catatan Rilis untuk mengetahui rilis terbaru.

Untuk mengupdate ke versi saat ini, jalankan:

mtt start --force_update

Untuk menghentikan aplikasi, jalankan:

mtt stop

Untuk melihat daftar perintah lainnya, gunakan:

mtt --help

Mencadangkan dan memulihkan database

Untuk mencadangkan database ATS OmniLab, hentikan aplikasi dan jalankan perintah berikut, yang mencadangkan database saat ini ke dalam file TAR bernama mtt-backup.tar di direktori {i>home<i} Anda:

docker run --rm --mount source=mtt-data,target=/data -v ~:/out ubuntu bash -c "cd /data && tar cvf /out/mtt-backup.tar ."

Untuk memulihkan, jalankan perintah berikut sebelum memulai aplikasi:

docker run --rm --mount source=mtt-data,target=/data -v ~:/out ubuntu bash -c "cd /data && tar xvf /out/mtt-backup.tar"

Wizard Penyiapan

Setelah Anda menginstal dan menjalankan OmniLab ATS untuk pertama kalinya, Wizard Penyiapan mengambil Anda mempelajari beberapa langkah untuk membantu menyesuaikan alat ini dengan lingkungan Anda. Apa saja perubahan yang Anda lakukan di sini dapat dikonfigurasi ulang nanti melalui halaman Setelan.

Memulihkan cadangan konfigurasi

Jika Anda memiliki file konfigurasi yang dicadangkan dari {i>host<i} ATS OmniLab lain, Anda dapat mengunggah file untuk menyalin konfigurasi apa pun dimodifikasi dari {i>host<i} tersebut dengan mengklik tombol Upload File.

Pulihkan Cadangan Konfigurasi

Gambar 1. Memulihkan Cadangan Konfigurasi.

Menyetel akun layanan default

Anda dapat menyetel akun layanan yang digunakan oleh OmniLab ATS secara default saat mengakses resource Anda (misalnya, Penyimpanan Google Cloud, Google Drive). Untuk mengautentikasi akun layanan Anda, klik Upload Kunci Akun Layanan dan pilih file kunci JSON akun layanan Anda.

Tetapkan Akun Layanan

Gambar 2. Menyetel akun layanan.

Ketika akun layanan berhasil diautentikasi, email akun alamat tersebut muncul di sudut kanan atas laman. Untuk mengubah layanan akun, klik nama akun, hapus akun {i>default<i} saat ini, dan unggah kunci akun layanan yang baru.

Ubah akun layanan

Gambar 3. Mengubah akun layanan.

Mengimpor set konfigurasi

Set konfigurasi adalah paket konfigurasi untuk menjalankan rangkaian pengujian, termasuk tindakan perangkat, dan saluran build. Kumpulan konfigurasi dihosting di Bucket Cloud Storage (GCS). Setelah mengautentikasi saluran build GCS dengan Akun Google, Anda akan melihat daftar semua set konfigurasi yang tersedia untuk Anda.

Pilih set konfigurasi yang ingin Anda tambahkan ke host Stasiun Pengujian dan klik Impor yang Dipilih.

Mengimpor Kumpulan Konfigurasi

Gambar 4. Mengimpor Kumpulan Konfigurasi.

Sertakan setelan Wi-Fi

Beberapa uji CTS mengharuskan perangkat Anda tersambung ke hotspot Wi-Fi. Untuk memilih Jaringan Wi-Fi, masukkan SSID Wi-Fi dan PSK Wi-Fi opsional.

Setelan Wi-Fi

Gambar 5. Setelan hotspot Wi-Fi.

Setelah menyelesaikan Wizard Penyiapan, halaman akan dimuat ulang dengan setelan baru diterapkan.

Hubungkan perangkat

Proses debug USB harus diaktifkan agar dapat menggunakan perangkat untuk pengujian. Untuk mengaktifkan proses debug:

  1. Ikuti petunjuk di Aktifkan opsi developer dan proses debug.

  2. Jika Anda berencana menggunakan build Android pengujian yang dimuat sebelumnya dengan kunci ADB kustom, file .adb_key kustom pada direktori ~/.android/.

    File dimuat secara otomatis dan diteruskan ke ADB untuk mengaktifkan USB secara otomatis proses debug setelah perangkat di-flash untuk perangkat yang menjalankan build tersebut.

  3. Hubungkan perangkat ke mesin host menggunakan USB.

    Perangkat akan muncul di tab Perangkat ATS OmniLab dalam satu menit setelah me-refresh antarmuka web. Anda juga dapat melihat status perangkat di tab ini.

    Hubungkan Perangkat

    Gambar 6. Menghubungkan perangkat.

Status perangkat yang berbeda adalah:

  • Tersedia - Perangkat terhubung dan siap menjalankan pengujian.
  • Alokasi - Perangkat terhubung dan sedang menjalankan pengujian. Masing-masing perangkat hanya dapat menjalankan satu pengujian dalam satu waktu, jadi perangkat harus pengujian saat ini sebelum menjalankan pengujian baru.

Menjalankan pengujian

Pilih pengujian

OmniLab ATS dilengkapi dengan serangkaian konfigurasi CTS yang telah dipaketkan. Untuk menjalankan salah satu pengujian ini, buka tab Test Suite dan klik Run test untuk uji coba.

Pilih Pengujian

Gambar 7. Memilih pengujian.

Untuk mengedit atau menambahkan pengujian baru, lihat Menambahkan pengujian.

Mengonfigurasi pengujian yang dijalankan

Edit parameter yang akan digunakan untuk pengujian spesifik ini. Sebagian besar parameter diisi otomatis dengan nilai yang ditentukan dalam konfigurasi pengujian yang dipilih.

Langkah ini dapat diselesaikan menggunakan nilai default, tetapi Anda dapat mengubah parameter, seperti Percobaan Ulang Maks dan Perintah, agar sesuai dengan kebutuhan Anda.

Mengonfigurasi Uji Coba

Gambar 8. Mengonfigurasi pengujian.

Parameter uji coba adalah:

  • Nama - Nama rangkaian pengujian yang ingin Anda jalankan.
  • Jumlah Menjalankan - Berapa kali pengujian ini harus dijalankan saat dijadwalkan. Pengujian dijadwalkan menggunakan Federasi Perdagangan, yang mengadakan hingga 20 pengujian berjalan secara paralel jika ada kapasitas untuk melakukannya.
  • Percobaan Ulang Maks - Frekuensi maksimum untuk mencoba kembali pengujian jika setidaknya satu pengujian gagal. Hal ini biasanya diatur ke 4–6 percobaan ulang untuk menjalankan CTS penuh ke menangani pengujian yang tidak stabil.
  • Waktu Tunggu Antrean - Jika pengujian yang dijalankan tetap berada dalam status Mengantrekan terlalu lama, proses tersebut akan dibatalkan secara otomatis. Tentukan jumlah waktu tunggu sebelum pembatalan di sini. Setelan default-nya adalah 24 jam.
  • Command - Perintah untuk menjalankan rangkaian pengujian. Anda dapat memasukkan argumen command line di sini. Misalnya, jalankan modul tertentu di CTS 8.1 dengan:

    cts-suite -m ShortModuleName
    
  • Retry Command - Perintah untuk mencoba kembali rangkaian pengujian. Anda dapat menambahkan argumen command line tambahan di sini. Misalnya, untuk mencoba kembali hanya spesifik dalam CTS 8.1, gunakan:

    cts --retry 0 -m ShortModuleName
    

    Argumen coba lagi mungkin berbeda dari yang tersedia dengan perintah awal, jadi periksa parameter yang didukung di situs resmi untuk pengujian yang dipilih Google Workspace.

  • Uji Coba Sebelumnya - Jika Anda ingin menjalankan kembali pengujian sebelumnya:

    • Lokal - Jika operasi telah dimulai di host saat ini, masukkan uji coba ID yang terlihat saat melihat detail pengujian.

      Pengujian Lokal Sebelumnya

      Gambar 9. Pengujian lokal sebelumnya.

    • Jarak jauh - Jika operasi dimulai pada host yang berbeda, upload pengujian hasil dengan memilih Remote, mengklik Upload Test Results File, dan memilih file dari penyimpanan lokal Anda.

      Pengujian Sebelumnya Jarak Jauh

      Gambar 10. Pengujian sebelumnya jarak jauh.

Pilih perangkat

Klik kotak centang untuk memilih perangkat yang akan dialokasikan untuk menjalankan pengujian Google Workspace. Jumlah shard akan otomatis berubah agar sesuai dengan jumlah perangkat dipilih.

Pilih Perangkat

Gambar 11. Memilih perangkat.

Untuk memilih perangkat berdasarkan atribut selain seri perangkat, Anda dapat secara manual masukkan "Spesifikasi Perangkat". Misalnya, untuk memilih 3 perangkat yang nama produknya "bramble", masukkan berikut ini:

product:bramble;product:bramble;product:bramble

Atribut yang didukung adalah:

  • id_build
  • serial_perangkat
  • device_type (tipe perangkat)
  • nama host
  • produk
  • varian_produk
  • sim_state

Semua perangkat yang dipilih harus dalam status Available untuk menjalankan pengujian. dan semuanya beralih ke status Alokasi saat pengujian dijalankan. J uji coba berada dalam status Antrean saat menunggu perangkat selesai yang tersedia.

Tambahkan tindakan perangkat

Tindakan perangkat adalah skrip yang dapat dijalankan sebelum setiap pengujian dijalankan. Agak besar tindakan perangkat sudah terkonfigurasi, seperti mem-flash dan memulai ulang. Kepada membuat tindakan perangkat baru, melihat Buat tindakan perangkat baru.

Tindakan Perangkat

Gambar 12. Tindakan perangkat.

Untuk menambahkan tindakan perangkat ke pengujian, klik Add new action, pilih kotak centang untuk tindakan yang akan ditambahkan, dan klik Add Action(s). Tindakan perangkat akan dilakukan secara berurutan. Anda dapat menyusun ulang tindakan dengan menariknya.

Menambahkan Tindakan

Gambar 13. Mengurutkan ulang tindakan.

Menetapkan resource pengujian

Resource pengujian adalah file yang diperlukan untuk menjalankan pengujian. Misalnya, menjalankan CTS memerlukan file android-cts*.zip, dan mem-flash perangkat mengharuskan Anda untuk menyediakan image build.

URL download untuk file zip rangkaian pengujian harus ditetapkan secara default ke Google Drive link yang diberikan kepada partner. Anda dapat memilih file lain dengan mengklik jelajahi. Di jendela {i>popup<i}, Anda dapat memasukkan tautan unduhan file, menggunakan file dari saluran build yang diautentikasi, atau mengupload file untuk digunakan dari penyimpanan lokal.

Resource Pengujian

Gambar 14. Menguji resource.

Di bawah ini adalah jendela pop-up untuk memilih resource pengujian dengan URL web. Anda dapat masukkan link URL download, lalu klik tombol Pilih untuk mengonfirmasi pilihan.

Pemilih Resource Pengujian - URL Web

Gambar 15. Pemilih Resource Pengujian - URL Web.

Jika Anda telah mengupload resource ke Google Grive, Google Cloud Storage (GCS), atau saluran lain, Anda juga dapat membuka tab saluran tertentu dan memilih resource di sana. Berikut adalah contoh untuk memilih materi dari Google Drive.

Pemilih Resource Pengujian - Google Drive

Gambar 16. Pemilih Resource Pengujian - Google Drive.

Selain hanya memilih file, karakter {i>wildcard <i}juga didukung di Filename. Dokumentasi dapat ditemukan di sini.

Pemilih Resource Pengujian - Dukungan Pola Karakter Pengganti

Gambar 17. Pemilih Resource Pengujian - Dukungan pola karakter pengganti.

Anda juga dapat memilih file dari penyimpanan file lokal ATS OmniLab. Anda dapat mengunggah ke penyimpanan ini, atau langsung menggunakan file dan direktori lokal.

Pemilih Resource Pengujian - Penyimpanan File Lokal

Gambar 18. Test Resource Selector - Penyimpanan file lokal.

Menambahkan konfigurasi jalankan ulang

Anda dapat menjadwalkan operasi ulang yang dimulai setelah operasi utama selesai dan memuat hasilnya, namun dapat menggunakan perangkat, tindakan, atau resource yang berbeda.

Menambahkan Konfigurasi Ulang

Gambar 19. Menambahkan Konfigurasi Ulang.

Memulai uji coba

Setelah Anda memasukkan informasi yang diperlukan untuk menjalankan pengujian, klik Start Test Jalankan. Jika semua informasi valid, pengujian dimulai, dan Anda dialihkan ke halaman untuk melihat detail dan progres pengujian.

Mulai Uji Coba

Gambar 20. Memulai pengujian.

Membuat rencana pengujian

Rencana pengujian digunakan untuk membuat pengujian yang dijalankan sesuai jadwal berkala. Misalnya, menjalankan CTS 9.0 setiap hari pada pukul 17.00. Untuk membuat rencana pengujian baru, klik Buat rencana pengujian baru.

Buat Rencana Pengujian

Gambar 21. Membuat rencana pengujian.

Konfigurasi rencana pengujian

Masukkan nama paket pengujian dan label yang ingin Anda tambahkan. Kemudian pilih jadwal penggunaan.

  • Manual - Rencana pengujian hanya membuat pengujian jika pengguna mengklik Jalankan rencana pengujian di halaman daftar rencana pengujian.
  • Berkala - Rencana pengujian secara otomatis menjadwalkan pengujian yang berjalan pada jadwal periodik yang dipilih. Misalnya, menjadwalkan pengujian yang dijalankan setiap hari pada 17:00.
  • Kustom - Rencana pengujian secara otomatis menjadwalkan pengujian yang dijalankan berdasarkan persamaan cron dimasukkan. Misalnya, untuk menjadwalkan pengujian setiap hari pada pukul 17.00, ekspresi cron adalah 0 17 * * *.

Mengonfigurasi Rencana Pengujian

Gambar 22. Mengonfigurasi rencana pengujian.

Menambahkan rangkaian pengujian

Tambahkan suite pengujian yang ingin Anda jadwalkan oleh rencana pengujian dengan mengklik + Tambahkan konfigurasi uji coba. Pilih rangkaian pengujian dari dropdown Nama dan klik Langkah berikutnya. Kemudian pilih perangkat tempat Anda ingin menjalankan pengujian dan klik Add Configuration. Anda dapat menambahkan beberapa konfigurasi untuk setiap pengujian rencana Anda sendiri.

Mengonfigurasi Uji Coba

Gambar 23. Mengonfigurasi pengujian.

Tambahkan tindakan perangkat

Tambahkan tindakan perangkat yang ingin Anda jalankan sebelum setiap pengujian dijalankan. Lihat Menambahkan tindakan perangkat untuk detail selengkapnya.

Menambahkan Tindakan Perangkat

Gambar 24. Menambahkan tindakan perangkat.

Menetapkan resource pengujian

Menambahkan resource pengujian ke rencana pengujian sama dengan menambahkannya ke pengujian individual yang dijalankan. Lihat Menyetel resource pengujian untuk mengetahui detail selengkapnya.

Menetapkan Resource Pengujian

Gambar 25. Menyetel resource pengujian.

Lihat pengujian yang dijalankan

Daftar pengujian yang dijalankan

Lihat daftar pengujian terjadwal yang dijalankan di halaman Test Runs. Klik Lihat untuk melihat detail selengkapnya tentang pengujian yang dijalankan.

Anda juga dapat memfilter daftar dengan memasukkan {i>string<i} ke {i>filter<i} dan menekan tombol Enter. Anda dapat menggunakan beberapa filter dengan memisahkannya menggunakan koma. Filter menampilkan semua baris yang berisi teks yang tepat (tanpa substring cocok) di kolom mana pun, kecuali Status dan Dibuat.

Filter kosong menampilkan semua baris. Saat ini tidak ada cara untuk memfilter baris dengan nilai kosong.

Daftar Pengujian yang Dijalankan

Gambar 26. Daftar pengujian yang dijalankan.

Detail pengujian yang dijalankan

Anda dapat melihat detail operasi di sini, seperti status, log, dan hasil pengujian tersebut.

Detail Operasi Pengujian

Gambar 27. Detail pengujian yang dijalankan.

Status operasi uji

Progres untuk pengujian ditampilkan di bagian Status. Jika ada masalah pesan error, seperti progres download, alasan pembatalan, atau pesan error, ditampilkan di sini.

Status Pengujian Operasi

Gambar 28. Status operasi uji coba.

Status uji coba adalah:

  • Tertunda - Resource yang diperlukan sedang didownload.
  • Antrean - Pengujian siap dijalankan saat perangkat tersedia.
  • Running - Pengujian sedang berjalan di perangkat yang dialokasikan.
  • Selesai - Pengujian telah selesai dan melaporkan hasilnya.
  • Dibatalkan - Pengujian dibatalkan oleh pengguna atau waktu tunggu habis saat mencoba menemukan perangkat yang tersedia.
  • Error - Terjadi error yang mencegah pengujian berjalan.

Membatalkan pengujian

Jika pengujian belum selesai, Anda dapat membatalkannya dengan mengklik Cancel dan lalu mengklik Yes dalam dialog konfirmasi. Uji coba juga otomatis dibatalkan jika masih berada dalam status Antrean lebih lama dari queue_timeout_seconds. Membatalkan pengujian saat dalam status Running mungkin memerlukan waktu beberapa menit untuk diterapkan.

Batalkan Pengujian

Gambar 29. Membatalkan pengujian.

Menguji hasil operasi

Setelah pengujian selesai, hasilnya dikumpulkan dan ditampilkan. Anda dapat lihat detail tambahan dengan mengklik panah untuk setiap lari. Klik Lihat Output File untuk melihat artefak pengujian yang dikumpulkan, seperti test_result.xml dan test_result_failures.html.

Uji Hasil yang Dijalankan

Gambar 30. Uji hasil operasi.

Anda dapat melihat log host dan Tradefed live di tab Logs.

Uji Log Operasi

Gambar 31. Tab {i>Log<i}.

Hasil untuk setiap modul ada di tab Test Results.

Tab Hasil Pengujian

Gambar 32. Tab Test Results.

Anda dapat mendownload file yang digunakan sebagai resource pengujian dengan mengklik Open di Tab Resource Pengujian.

Tab Resource Pengujian

Gambar 33. Tab Resource Pengujian.

Untuk melihat detail pengujian yang dijalankan, seperti create_time, buka tab Konfigurasi.

Tab Konfigurasi Pengujian

Gambar 34. Tab Config.

Fitur lanjutan

Mengelola file konfigurasi

OmniLab ATS menggunakan file konfigurasi yang ditulis dalam YAML untuk memuat opsi yang telah ditentukan sebelumnya seperti pengujian, saluran build, dan tindakan perangkat. Berikut adalah contoh file konfigurasi:

// example_file.yaml
tests:
- id : android.cts.9_0.arm
  name: CTS 9.0 (ARM)
  test_resource_defs:
  - name: android-cts.zip
    default_download_url: https://dl.google.com/dl/android/cts/android-cts-9.0_r7-linux_x86-arm.zip
    test_resource_type: TEST_PACKAGE
  command: cts
  env_vars:
  - name: TF_PATH
    value: ${TF_WORK_DIR}/android-cts/tools:${TF_WORK_DIR}/android-cts/testcases
  - name: LD_LIBRARY_PATH
    value: ${TF_WORK_DIR}/android-cts/lib:${TF_WORK_DIR}/android-cts/lib64
  setup_scripts:
  output_file_patterns:
  - android-cts/logs/latest/.*
  - android-cts/results/latest/.*\.html
  - android-cts/results/latest/compatibility_result\..*
  - android-cts/results/latest/logo.png
  - android-cts/results/latest/test_result.xml
  result_file: test_result.xml
  java_properties:
  - name: CTS_ROOT
    value: ${TF_WORK_DIR}
  context_file_dir: android-cts/results/
  context_file_pattern: '[\d_\.]+\.zip'
  retry_command_line: retry --retry 0
  runner_sharding_args: --shard-count ${TF_SHARD_COUNT}

build_channels:
- id: google_drive
  name: Google Drive
  provider_name: Google Drive

device_actions:
- id: flash
  name: Flash
  test_resource_defs:
  - name: bootloader.img
    test_resource_type: DEVICE_IMAGE
  - name: radio.img
    test_resource_type: DEVICE_IMAGE
  - name: img.zip
    test_resource_type: DEVICE_IMAGE
  tradefed_target_preparers:
  - class_name: com.android.tradefed.targetprep.RunHostCommandTargetPreparer
    option_values:
    - name: work-dir
      values:
      - ${TF_WORK_DIR}
    - name: host-setup-command
      values:
      - adb -s $SERIAL reboot-bootloader
      - fastboot -s $SERIAL flash bootloader bootloader.img
      - fastboot -s $SERIAL flash radio radio.img
      - fastboot -s $SERIAL reboot-bootloader
      - fastboot -s $SERIAL -w update img.zip
      - adb -s $SERIAL wait-for-device
    - name: host-cmd-timeout
      values:
      - 10m

Saat menyiapkan instance ATS OmniLab, Anda dapat membagikan konfigurasi Anda kepada pengguna lain dengan mengekspornya sebagai file. Untuk melakukannya, buka halaman Setelan dan klik Ekspor di kanan atas.

Config File Management

Gambar 35. Pengelolaan file konfigurasi.

Setelah file konfigurasi didownload, bagikan file tersebut kepada pengguna lain. Mereka dapat menambahkan file konfigurasi ke instance ATS OmniLab dengan mengklik Import dan pilih file konfigurasi.

Membuat tindakan perangkat baru

Tindakan perangkat digunakan untuk mengotomatiskan proses penyiapan perangkat. Tindakannya adalah skrip yang dijalankan di setiap perangkat tempat pengujian dijalankan sebelum setiap pengujian dijalankan, termasuk sebelum percobaan ulang. Untuk melihat daftar tindakan perangkat yang tersedia, buka Setelan dan klik tab Tindakan Perangkat. Beberapa tindakan perangkat sudah dikonfigurasi, seperti memulai ulang dan mem-flash.

Tab Tindakan Perangkat

Gambar 36. Tab Tindakan Perangkat.

Menambahkan tindakan perangkat baru

  1. Klik Tindakan perangkat baru.

    Tombol Tindakan Perangkat Baru

    Gambar 37. Tombol tindakan perangkat baru.

  2. Masukkan nama dan deskripsi.

    Nama Tindakan Perangkat

    Gambar 38. Nama tindakan perangkat.

  3. Klik Add Target Preparer.

  4. Masukkan Target Trade Federation Misalnya, nama class lengkap Preparer, com.android.tradefed.targetprep.RunHostCommandTargetPreparer.

    Tambahkan Mempersiapkan Target

    Gambar 39. Menambahkan persiapan target.

    Daftar persiapan target yang tersedia dapat ditemukan di com.android.tradefed.targetprep alamat IP internal.

    Daftar Persiapan Target

    Gambar 40. Daftar Mempersiapkan Target.

  5. Tambahkan opsi apa pun yang akan digunakan dengan persiapan target. Untuk melihat opsi yang tersedia, centang persiapan target untuk kode sumber setiap persiapan target di AOSP:

    Contoh Opsi Tindakan

    Gambar 41. Contoh opsi tindakan.

  6. Untuk menambahkan opsi, klik Add Target Preparer Option dan masukkan nilai yang diperlukan.

    Contoh Perintah Tindakan

    Gambar 42. Contoh perintah Action.

  7. Menentukan resource pengujian yang diperlukan untuk mengeksekusi tindakan perangkat, untuk membangun image untuk melakukan flash. Untuk menambahkan definisi resource, klik Tambahkan Referensi Pengujian dan isi kolom wajib diisi. Jika Anda tahu di mana file Anda berada, Anda dapat memberikan URL download {i>default<i} dengan mengklik jelajahi. Jika persiapan target menerima direktori sebagai resource pengujian, pilih Decompress. Kemudian, tentukan direktori Destination relatif di bagian direktori kerja sementara dan Nama File menjadi didekompresi. Jika tidak ada nama file yang diberikan, semua file akan didekompresi dari resource pengujian.

    Referensi Pengujian Tindakan

    Gambar 43. Resource pengujian tindakan.

  8. Klik Perbarui.

    Perubahan Penyimpanan Tindakan

    Gambar 44. Perubahan penyimpanan tindakan.

Kelola pengujian

Mengedit pengujian

Untuk mengedit pengujian tersimpan, buka halaman Pengujian dan klik Edit pada baris yang ingin Anda ubah. Setelah mengubah konfigurasi pengujian, klik Perbarui.

Mengedit pengujian

Gambar 45. Mengedit pengujian.

Menambahkan pengujian baru

Untuk menambahkan pengujian baru, buka halaman Pengujian dan klik Buat Pengujian Baru. Masuk informasi yang sesuai dan klik Buat.

Membuat pengujian

Gambar 46. Membuat pengujian.

Menyalin pengujian

Gambar 47. Menyalin pengujian.

Mengekspor konfigurasi host

Setelah mengonfigurasi host, Anda dapat mengekspor konfigurasi host ke file. Anda dapat mengupload file ini ke host lain untuk menyalin konfigurasi yang disimpan.

Untuk mengekspor konfigurasi host, buka halaman Setelan, lalu klik Ekspor di pojok kanan atas.

Mengekspor konfigurasi host

Gambar 48. Mengekspor konfigurasi host.

Untuk mengimpor file konfigurasi host, buka halaman Setelan, lalu klik Klik Impor di pojok kanan atas.

Mengimpor konfigurasi host

Gambar 49. Mengimpor konfigurasi host.

Menggunakan file dan direktori lokal

Mulai versi R11, file dalam direktori $HOME/.ats_storage telah dapat diakses secara otomatis di ATS OmniLab. Menyalin atau memindahkan file ke direktori, Anda dapat memilihnya dari tab Local File saat menjadwalkan dan menjalankan pengujian.

cp /path/to/file $HOME/.ats_storage

Memilih file lokal

Gambar 50. Memilih file dari direktori $HOME/.ats_storage.

Anda bisa memasang direktori tambahan ke penyimpanan file lokal dengan perintah --mount_local_path.

mtt start --mount_local_path=/path/to/dir1 --mount_local_path=/path/to/dir2:renamed_dir2

Direktori tambahan yang terpasang

Gambar 51. Direktori tambahan yang dipasang di penyimpanan file lokal.

Mengaktifkan mode multi-host

Dengan mode Multi-host, pengguna dapat menggunakan satu host pengontrol ATS untuk mengelola perangkat dan pengujian pada beberapa {i>host<i} pekerja ATS.

Arsitektur mode multi-host

Gambar 52. Arsitektur mode multi-host.

  1. Untuk memulai pengontrol ATS, gunakan perintah berikut:

    mtt start --operation_mode=ON_PREMISE
    
  2. Periksa pengontrol dapat diakses di http://${CONTROLLER_HOSTNAME}:8000.

  3. Untuk memulai pekerja, gunakan perintah berikut:

    mtt start --control_server_url=http://CONTROLLER_HOSTNAME:8000 --operation_mode=ON_PREMISE
    

Jika jaringan Anda tidak mengizinkan {i> host <i}untuk berkomunikasi satu sama lain, Anda harus mengikuti petunjuk penyiapan lanjutan di bawah ini pekerja ATS.

  1. Menghubungkan kedua host menggunakan tunnel SSH. Pilih porta untuk utama dan porta server file, misalnya, 9000 dan 9006.

    ssh -L ATS_PORT:localhost:8000 -L FS_PORT:localhost:8006 CONTROLLER_HOSTNAME
    
  2. Mengonfigurasi dan memulai ATS.

    DOCKER_GATEWAY_IP_ADDRESS=$(ip -4 addr show dev docker0 | grep -Eo 'inet [.0-9]+/' | grep -Eo '[.0-9]+')
    socat tcp-listen:ATS_PORT,bind="${DOCKER_GATEWAY_IP_ADDRESS}",reuseaddr,fork tcp-connect:127.0.0.1:ATS_PORT &
    socat tcp-listen:FS_PORT,bind="${DOCKER_GATEWAY_IP_ADDRESS}",reuseaddr,fork tcp-connect:127.0.0.1:FS_PORT &
    mtt start --control_server_url=http://${DOCKER_GATEWAY_IP_ADDRESS}:ATS_PORT \
                    --control_file_server_url=http://${DOCKER_GATEWAY_IP_ADDRESS}:FS_PORT \
                    --operation_mode=ON_PREMISE
    

Pembersih file

Pembersih file adalah cron job yang berjalan setiap jam untuk membersihkan file berdasarkan konfigurasi yang ditentukan pengguna. ATS memiliki dua konfigurasi default untuk mengarsipkan pengujian menjalankan hasil dan menghapus file sementara. Panduan ini menjelaskan cara menyesuaikan kebijakan dan konfigurasi untuk mengelola file Anda secara efektif.

Kebijakan

Kebijakan mendefinisikan operasi yang akan dijalankan pada file atau direktori, dan untuk memilih target. Operasi yang tersedia ditampilkan dalam tabel:

Jenis operasiParameter
ARCHIVEremove_file: Jika true, hapus file setelah pengarsipan.
DELETE

Kriteria didasarkan pada atribut file dan informasi sistem. Tersedia kriteria ditampilkan dalam tabel:

Jenis kriteriaDeskripsiParameter
LAST_MODIFIED_TIMEFilter file berdasarkan tanggal dan waktu terakhir diubah.ttl: Berbagai jenis ekspresi waktu didukung, misalnya 10m, 2h, 7 days, 4w. Lihat pytimeparse untuk mengetahui format yang didukung.
LAST_ACCESS_TIMEFilter file berdasarkan tanggal dan waktu akses terakhir.Sama seperti LAST_MODIFIED_TIME.
NAME_MATCHFilter file berdasarkan namanya menggunakan ekspresi reguler.pattern: Ekspresi reguler, misalnya, [a-f0-9]{8}-([a-f0-9]{4}-){3}[a-f0-9]{12}\.zip untuk mencocokkan zip hasil.
SYSTEM_AVAILABLE_SPACEMemicu tindakan berdasarkan ruang yang tersedia di sistem.threshold: Memicu tindakan saat ruang yang tersedia berada di bawah batas, misalnya, 200(B), 200KB, 200MB, 200GB, 2TB.

Kebijakan baru pembersih file

Gambar 53. Menambahkan kebijakan baru yang lebih bersih file.

Konfigurasi

Konfigurasi menggabungkan satu atau beberapa kebijakan dengan direktori tertentu. File dan direktori dalam direktori tertentu diproses berdasarkan kebijakan yang ditentukan. Kebijakan diterapkan sesuai urutan kemunculannya dalam konfigurasi.

Semua direktori target harus berada di direktori /data. Jika menentukan direktori target sebagai logs, yang akan ditafsirkan sebagai /data/logs.

Edit konfigurasi pembersih file

Gambar 54. Edit konfigurasi pembersih file.

Reset

Mengklik Reset Setelan akan mengembalikan konfigurasi pembersih file ke status default. Tindakan ini akan menghapus SEMUA item kustom.

Reset setelan pembersih file

Gambar 55. Reset setelan pembersih file.

Dukungan

Laporan bug

Kontribusi Anda pada OmniLab ATS membantu meningkatkan pengembangan alat ini, dan kami membutuhkan masukan Anda! Lihat Catatan rilis ATS OmniLab untuk mengetahui detail tentang rilis terbaru. Untuk melaporkan bug atau menawarkan saran, laporkan bug. Partner harus melaporkan bug atau saran melalui channel partner mereka.