Eclipse'i kullanarak Tradefed'i ayarlamak için aşağıdaki adımları uygulayın.
Ticaret Federasyonu'nu 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 Eclipse IDE for Java developers'ı şu adresten indirebilirsiniz: eclipse.org/downloads
Proje oluşturma
- Komut satırından make komutunu bir kez çalıştırın. Bu işlem, aşağıdaki projelerin bağlı olduğu 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üze yönlendirin.Window > Preferences > General > Workspace > Linked Resources
içinde TRADEFED_ROOT yol değişkenini ayarlayın ve tradefed kaynak kökünüze yönlendirin.Bu açık kaynak Java projelerini aşağıdaki yollara aktarmak 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 kaynak kodu, /platform/tools/base/tools_r22/ddmlib/src/main/java/com/android/ddmlib/IDevice.java gibi paketlenmemiş araçlar dalından ekleyin.İsteğe bağlı: CTS harness projelerinin de yüklenmesini istiyorsanız şunları 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çimlendirme
NOT: Gerekli dosyalar, tam platform kaynak ağacındaki development/ide/eclipse
içinde bulunur. Bu nedenle, bu dosyaları almak için android-latest-release
gibi bir platform dalını kontrol etmeniz gerekir:
/development/android16-release/ide/eclipse/
Biçimlendiriciyi otomatik olarak Android stil kılavuzuna ayarlamak için Eclipse'teki tercih dosyalarını kullanın. Bu işlemi Studio'da yapmak için:
- Window > Preferences > Java > Code Style'a (Pencere > Tercihler > Java > Kod Stili) gidin.
- Biçimlendirici bölümünde
android-formatting.xml
dosyasını içe aktarın. - Düzenle > İçe aktarmalar bölümünde
android.importorder
dosyasını içe aktarın.
Sondaki boşlukları kaldırma
Eclipse'in sondaki tüm boşlukları kaldırmasını zorlamak için:
- Window > Preferences -> Java -> Editor -> Save Actions (Pencere > Tercihler > Java > Düzenleyici > Kaydetme İşlemleri) seçeneğine gidin.
- Ardından Ek İşlemler -> Yapılandır -> Kod > Düzenleme sekmesi -> Biçimlendirici'yi tıklayın.
- Sondaki Boşluğu 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 yükleme öncesi kancası çalıştırılır: google-java-format
Bu, kodunuzu yaygın standarda göre biçimlendirmenize yardımcı olur.
Eclipse'te hata ayıklama
TF kodunu Eclipse'te bir hata ayıklayıcı aracılığıyla çalıştırmak istiyorsanız işlevselliği kullanmanın en basit ve en hızlı yolu olacağından, söz konusu kod için önce bir birim testi oluşturmanız önerilir.
Bir TF birim testinde hata ayıklamak için testi sağ tıklayıp Hata ayıklama > JUnit testi'ni seçmeniz yeterlidir.
TF işlevsel testinde hata ayıklamak için önceki bölümde işlevsel test çalıştırma ile ilgili talimatları uygulayın ancak Çalıştır > Hata ayıklama yapılandırmaları menüsünü kullanın.
TF programının kendisinde hata ayıklamak için herhangi bir yapılandırmayı çalıştırırken önceki bölümde işlevsel test çalıştırma ile ilgili talimatları uygulayın ancak 4. adımda çalıştırmak istediğiniz yapılandırmanın komut satırı bağımsız değişkenlerini sağlayın. Bu nedenle, "enstrüman" yapılandırmasında hata ayıklamak için Run > Debug configuration (Çalıştır > Hata ayıklama yapılandırması) menüsüne gidin ve Eclipse hata ayıklama yapılandırmasındaki Arguments (Bağımsız değişkenler) sekmesini -- package <package to run> instrument
olarak ayarlayın.
Eclipse ile uzaktan hata ayıklama
tradefed.sh
komut satırından başlatılan bir Tradefed oturumunda uzaktan hata ayıklamak için aşağıdaki adımları uygulayın:
- Hata ayıklama işaretiyle tradefed.sh'yi 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 uzaktan hata ayıklama özelliğiyle ekleme: Run > Debug Configurations... seçeneğini belirleyin.
- Açılan iletişim kutusunda, sol menüden Remote Java Application'ı (Uzak Java Uygulaması) seçin.
- İşlem çubuğunda 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ı, dinleme yapan JVM işlemine bağlanır ve tradefed.sh
çalıştıran terminalde tf>
istemi gösterilir.
Hata ayıklama modunda kodunuzda adım adım ilerlemek için Eclipse'te bir kesme noktası ayarlayın ve terminalde Tradefed komutunuzu (ör. run <test>
) çağırın. TF başlatma sırasında herhangi bir şeyi hata ayıklamak için önce kesme noktasını ayarlayabilir, ardından Eclipse hata ayıklayıcısını ekleyebilirsiniz.
İPUCU: Alternatif bir bağlantı noktası kullanmak için yukarıdaki 1. adımda yer alan komuta TF_DEBUG_PORT=nnn
ekleyin. İncelemeniz gereken gizemli askıda kalma hataları varsa bunu üretim ortamında bile kullanabilirsiniz: tradefed.sh
içinde suspend=y
yerine suspend=n
yazın ve hata ayıklama işaretiyle başlayın. JVM, hata ayıklayıcının eklenmesini beklemez ancak işlem çalışmaya devam ettiği sürece bunu istediğiniz zaman yapabilirsiniz.
JDB kullanarak uzaktan hata ayıklama
Java hata ayıklayıcısı JDB'yi kullanmak için Eclipse'e benzer adımları uygulayın:
- Hata ayıklama işaretiyle
tradefed.sh
'ı başlatın:TF_DEBUG=1 tradefed.sh
- JVM'den gelen istemi görene kadar bekleyin:
Listening for transport dt_socket at address: 10088
. jdb
ağına bağlanın. Örneğin, croot run komutundan:jdb -attach 10088 \ -sourcepath tools/tradefederation/core/src:vendor/google_tradefederation/core/src
Bağlantının kurulmasını bekleyin ve hata ayıklamaya 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ırması yapmak için Coverage As > JUnit test seçeneğini belirleyin.