Siapkan Eclipse

Ikuti langkah-langkah ini untuk menyiapkan Tradefed menggunakan Eclipse.

Buat ruang kerja terpisah untuk mengembangkan Federasi Perdagangan, jangan gunakan kembali ruang kerja yang sudah digunakan untuk pengembangan perangkat Android.

Jika perlu, Anda dapat mengunduh Eclipse IDE untuk pengembang Java dari: Eclipse.org/downloads

Buat proyek

  1. Jalankan make sekali dari baris perintah. Ini akan membangun perpustakaan eksternal yang bergantung pada proyek di bawah ini.
  2. Setel variabel classpath TRADEFED_ROOT di Window > Preferences > Java > Build Path> Classpath Variables dan arahkan ke root sumber tradefed Anda
  3. Setel variabel jalur TRADEFED_ROOT di Window > Preferences > General > Workspace > Linked Resources dan arahkan ke root sumber tradefed Anda
  4. Gunakan wizard File > Import...-> General > Existing Projects into workspace" untuk memasukkan proyek Java open source ini ke jalur berikut:

    prebuilts/misc/common/ddmlib\*
    tools/loganalysis
    tools/loganalysis/tests
    tools/tradefederation/core
    tools/tradefederation/core/tests
    tools/tradefederation/contrib
    tools/tradefederation/core/remote
    platform_testing/libraries/health/runners/longevity/host
    platform_testing/libraries/annotations
    platform_testing/libraries/health/composers/host
    
  5. Opsional, jika Anda ingin melihat kode sumber ddmlib , lampirkan kode sumber dari cabang alat yang tidak dibundel, seperti /platform/tools/base/tools_r22/ddmlib/src/main/java/com/android/ddmlib/IDevice.java .

  6. Secara opsional, jika Anda juga ingin proyek harness CTS dimuat, impor:

    test/suite_harness/common/util
    test/suite_harness/common/host-side/util
    test/suite_harness/common/host-side/tradefed
    

Format otomatis

CATATAN: File yang diperlukan berada dalam development/ide/eclipse di struktur sumber platform lengkap. Jadi, Anda perlu memeriksa cabang platform seperti master untuk mendapatkan file-file ini: /development/master/ide/Eclipse/

Gunakan file preferensi di Eclipse untuk secara otomatis mengatur formatter ke panduan gaya Android. Untuk melakukan ini di Studio:

  1. Pergi ke Window > Preferences > Java > Code Style .
  2. Di bawah Formatter , impor file android-formatting.xml .
  3. Di bawah Atur > Impor , impor file android.importorder .

Hapus spasi putih tambahan

Untuk memaksa Eclipse menghapus semua spasi tambahan:

  1. Pergi ke Window > Preferences -> Java -> Editor -> Save Actions .
  2. Kemudian Tindakan Tambahan -> Konfigurasi -> Kode > tab Pengorganisasian -> Formatter .
  3. Centang Hapus Trailing Whitespace .
  4. Klik Terapkan dan Tutup .

Periksa gaya kode

Saat mengirimkan daftar perubahan, pengait praunggah otomatis akan berjalan untuk memeriksa format kode Anda: google-java-format

Ini membantu memformat kode Anda ke standar umum.

Debug Eclipse

Jika Anda ingin menjalankan kode TF melalui debugger di Eclipse, Anda disarankan untuk terlebih dahulu membuat unit test untuk kode yang dimaksud karena ini akan menjadi cara termudah dan tercepat untuk menjalankan fungsionalitas.

Untuk men-debug pengujian unit TF, cukup klik kanan padanya dan pilih Debug As > JUnit test .

Untuk men-debug pengujian fungsional TF, ikuti petunjuk di bagian sebelumnya untuk menjalankan pengujian fungsional, tetapi gunakan menu Run > Debug configurations .

Untuk men-debug program TF itu sendiri, saat menjalankan konfigurasi apa pun, ikuti petunjuk di bagian sebelumnya untuk menjalankan uji fungsional tetapi berikan argumen baris perintah untuk konfigurasi yang ingin Anda jalankan di langkah 4. Jadi untuk men-debug konfigurasi 'instrumen', buka menu konfigurasi Run > Debug dan atur tab Arguments di konfigurasi debug Eclipse ke -- package <package to run> instrument .

Debug jarak jauh dengan Eclipse

Ikuti langkah-langkah ini untuk men-debug sesi tradefed dari jarak jauh yang dimulai dari baris perintah tradefed.sh :

  1. Mulai tradefed.sh dengan tanda debug: TF_DEBUG=1 tradefed.sh
  2. Tunggu sampai Anda melihat prompt ini dari JVM: Listening for transport dt_socket at address: 10088 Ini berarti JVM sedang menunggu debugger untuk dilampirkan di port 10088 .
  3. Lampirkan dengan debugging jarak jauh Eclipse dari menu utama: Pilih Run > Debug Configurations... .
  4. Pada dialog pop-up, pilih Remote Java Application dari menu sebelah kiri.
  5. Klik ikon Konfigurasi peluncuran baru pada bilah tindakan.
  6. Beri nama konfigurasi sesuai keinginan Anda dan pilih tradefederation sebagai proyek.
  7. Isi port menggunakan alamat yang diberikan sebelumnya.
  8. Beralih ke tab Sumber dan tambahkan federasi perdagangan proyek dan google-tradefed ke Jalur Pencarian Sumber .
  9. Klik Debug untuk memulai sesi debugging.

Debugger menempel pada proses JVM yang mendengarkan, dan terminal yang menjalankan tradefed.sh menampilkan prompt tf> .

Untuk menelusuri kode Anda dalam mode debug, setel break point di Eclipse dan aktifkan perintah Tradefed Anda (yaitu run <test> ) di terminal. Untuk men-debug apa pun selama startup TF, Anda dapat mengatur break point terlebih dahulu dan kemudian melampirkan debugger Eclipse.

TIPS: Untuk menggunakan port alternatif, tambahkan TF_DEBUG_PORT=nnn ke perintah pada langkah 1 di atas. Anda bahkan dapat menggunakan ini di lingkungan produksi jika Anda memiliki bug hang misterius untuk diselidiki: ubah suspend=y menjadi suspend=n di tradefed.sh dan mulai dengan flag debug. JVM tidak akan menunggu debugger untuk dilampirkan, tetapi Anda dapat melakukannya kapan saja selama prosesnya masih berjalan.

Debug jarak jauh menggunakan JDB

Untuk menggunakan Java Debugger JDB, ikuti langkah-langkah yang mirip dengan Eclipse:

  1. Mulai tradefed.sh dengan tanda debug: TF_DEBUG=1 tradefed.sh
  2. Tunggu hingga Anda melihat perintah dari JVM: Listening for transport dt_socket at address: 10088 .
  3. Hubungkan jdb . Misalnya, dari croot run:

    jdb -attach 10088 \
        -sourcepath tools/tradefederation/core/src:vendor/google_tradefederation/core/src
    
  4. Tunggu koneksi dan debug! Jalankan man jdb untuk bantuan lebih lanjut.

Periksa cakupan kode

  1. Instal plugin Eclema .
  2. Buka Bantuan > Instal Perangkat Lunak Baru dan arahkan wizard ke: http://update.eclemma.org/
  3. Setelah terinstal, pilih opsi Coverage As > JUnit test untuk menjalankan cakupan kode.