Eclipse'i kullanarak Tradefed'i ayarlamak için aşağıdaki adımları uygulayın.
Trade Federation'ı geliştirmek için ayrı bir çalışma alanı oluşturun. Android cihaz geliştirme için kullanılan bir çalışma alanını yeniden kullanmayın.
Gerekirse Java geliştiricileri için Eclipse IDE'yi şu adresten indirebilirsiniz: eclipse.org/downloads
Proje oluşturma
- Komut satırından "bir kez yap"ı çalıştırın. Bu işlem, aşağıdaki projelere bağlı harici kitaplıklar oluşturur.
Window > Preferences > Java > Build Path> Classpath Variables
içinde TRADEFED_ROOT sınıf yolu değişkenini ayarlayın ve tradefed kaynak kökünüzü işaret edinWindow > Preferences > General > Workspace > Linked Resources
içinde TRADEFED_ROOT yol değişkenini ayarlayın ve bunu işlem yapılan kaynak kökünüze yönlendirinAşağıdaki yolların altına bu açık kaynak Java projelerini getirmek için
File > Import...-> General > Existing Projects into workspace"
sihirbazını kullanın: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
İsteğe bağlı olarak,
ddmlib
kaynak kodunu görmek istiyorsanız /platform/tools/base/tools_r22/ddmlib/src/main/java/com/android/ddmlib/IDevice.java gibi paketlenmemiş bir araç dalındaki kaynak kodunu ekleyin.İsteğe bağlı olarak, CTS çalışma projelerinin de yüklenmesini istiyorsanız içe aktarın:
test/suite_harness/common/util test/suite_harness/common/host-side/util test/suite_harness/common/host-side/tradefed
Otomatik biçim
NOT: Gerekli dosyalar, tam platform kaynak ağacında development/ide/eclipse
içinde bulunur. Bu nedenle, aşağıdaki dosyaları almak için main
gibi bir platform dalını kontrol etmeniz gerekir:
/development/main/ide/eclipse/
Düzenleyiciyi Android stil kılavuzuna otomatik olarak ayarlamak için Eclipse'teki tercih dosyalarını kullanın. Bunu Studio'da yapmak için:
- Pencere > Tercihler > Java > Kod Stili'ne gidin.
- Biçimlendirici'nin altında,
android-formatting.xml
dosyasını içe aktarın. - Düzenle > İçe aktarma bölümünde
android.importorder
dosyasını içe aktarın.
Sondaki boşlukları kaldır
Eclipse'i sondaki tüm boşlukları kaldırmaya zorlamak için:
- Pencere > Tercihler -> Java -> Düzenleyici -> İşlemleri Kaydet'e gidin.
- Ardından Ek İşlemler -> Yapılandır -> Kod -> Düzenleme sekmesi -> Düzenleyici'yi tıklayın.
- Sonundaki Boşlukları Kaldır'ı işaretleyin.
- Uygula ve Kapat'ı tıklayın.
Kod stilini kontrol etme
Değişiklik listesi gönderirken kod biçiminizi kontrol etmek için otomatik bir ön yükleme kancası çalıştırılır: google-java-format
Bu, kodunuzun ortak standarda göre biçimlendirilmesine yardımcı olur.
Hata Ayıklama Tutulması
TF kodunu Eclipse'te bir hata ayıklayıcı üzerinden çalıştırmak istiyorsanız işlevi kullanmanın en basit ve en hızlı yolu olduğu için önce söz konusu kod için bir birim testi oluşturmanız önerilir.
Bir TF birim testinde hata ayıklamak için birimi sağ tıklayın ve Hata Ayıkla > JUnit test'i seçin.
TF işlevsel testinde hata ayıklama yapmak için işlevsel test çalıştırmayla ilgili önceki bölümdeki talimatları uygulayın ancak Çalıştır > Yapılandırmaları hata ayıkla menüsünü kullanın.
TF programının kendisinde hata ayıklama yapmak için herhangi bir yapılandırmayı çalıştırırken işlevsel test çalıştırmayla ilgili önceki bölümdeki talimatları uygulayın ancak 4. adımda çalıştırmak istediğiniz yapılandırma için komut satırı bağımsız değişkenlerini sağlayın. Bu nedenle, "instrument" yapılandırmasında hata ayıklama yapmak için Çalıştır > Yapılandırmayı hata ayıkla menüsüne gidin ve Eclipse hata ayıklama yapılandırmasında Arguments (Parametreler) sekmesini -- package <package to run> instrument
olarak ayarlayın.
Eclipse ile uzaktan hata ayıklama
tradefed.sh
komut satırından başlatılan takas edilen oturumda uzaktan hata ayıklamak için şu adımları uygulayın:
- tradefed.sh dosyasını hata ayıklama işaretiyle başlatın:
TF_DEBUG=1 tradefed.sh
- JVM'den şu istemi görene kadar bekleyin:
Listening for transport dt_socket at address: 10088
Bu, JVM'nin hata ayıklayıcının10088
bağlantı noktasına bağlanmasını beklediği anlamına gelir. - Ana menüden Eclipse'in uzak hata ayıklama özelliğini kullanarak ekleme: Çalıştır > Hata Ayıklama Yapılandırmaları...'nı seçin.
- Pop-up iletişim kutusunda, soldaki menüden Remote Java Application öğesini seçin.
- İşlem çubuğundaki Yeni başlatma yapılandırması simgesini tıklayın.
- Yapılandırmayı istediğiniz gibi adlandırın ve proje olarak tradefederation'ı seçin.
- Daha önce sağlanan adresi kullanarak bağlantı noktasını doldurun.
- Kaynak sekmesine geçin ve tradefederation ile google-tradefed projelerini Kaynak Arama Yolu'na ekleyin.
- Hata ayıklama oturumunu başlatmak için Hata ayıkla'yı tıklayın.
Hata ayıklayıcı, dinleyen JVM sürecine bağlanır ve tradefed.sh
çalıştıran terminalde tf>
istemi gösterilir.
Hata ayıklama modunda kodunuzu adım adım incelemek için Eclipse'te bir kesme noktası ayarlayın ve terminalde Tradefed komutunuzu (ör. run <test>
) çağırın. TF'nin başlatılması sırasında herhangi bir şeyde hata ayıklama yapmak için önce durma noktasını ayarlayabilir ve ardından Eclipse hata ayıklayıcısını ekleyebilirsiniz.
İPUCU: Alternatif bir bağlantı noktası kullanmak için yukarıdaki 1. adımda komuta TF_DEBUG_PORT=nnn
ekleyin. Araştırmanız gereken gizemli asma hatalarınız varsa bunu üretim ortamında bile kullanabilirsiniz: tradefed.sh
içinde suspend=y
değerini suspend=n
olarak değiştirin ve hata ayıklama işaretiyle başlayın. JVM, hata ayıklayıcının eklenmesini beklemez ancak işlem devam ettiği sürece bunu istediğiniz zaman yapabilirsiniz.
JDB kullanarak uzaktan hata ayıklama
Java hata ayıklayıcı JDB'yi kullanmak için Eclipse'tekilere benzer adımları uygulayın:
- Hata ayıklama işaretiyle
tradefed.sh
'ü başlatın:TF_DEBUG=1 tradefed.sh
- JVM'den gelen isteği görene kadar bekleyin:
Listening for transport dt_socket at address: 10088
. jdb
'e bağlanın. Örneğin, croot'tan şunu çalıştırın:jdb -attach 10088 \ -sourcepath tools/tradefederation/core/src:vendor/google_tradefederation/core/src
Bağlantıyı bekleyin ve hata ayıklama işlemine başlayın. Daha fazla yardım için
man jdb
komutunu çalıştırın.
Kod kapsamını inceleme
- Eclemma eklentisini yükleyin.
- Yardım > Yeni Yazılım Yükle'ye gidin ve sihirbazı şu adrese yönlendirin: http://update.eclemma.org/
- Yüklendikten sonra kod kapsamı çalıştırmak için Kapsam Olarak > JUnit test seçeneğini belirleyin.