Aby skonfigurować narzędzie Tradefed za pomocą Eclipse, wykonaj te czynności.
Utwórz osobny obszar roboczy do tworzenia aplikacji Trade Federation. Nie używaj obszaru roboczego, który jest już używany do tworzenia aplikacji na urządzenia z Androidem.
W razie potrzeby możesz pobrać środowisko Eclipse IDE dla programistów Java ze strony eclipse.org/downloads.
Tworzenie projektów
- Uruchom make raz z wiersza poleceń. Spowoduje to utworzenie bibliotek zewnętrznych, na których opierają się projekty wymienione poniżej.
- Ustaw zmienną classpath TRADEFED_ROOT w pliku
Window > Preferences > Java > Build Path> Classpath Variables
i wskaż katalog źródeł tradefed. - Ustaw zmienną ścieżki TRADEFED_ROOT w pliku
Window > Preferences > General > Workspace > Linked Resources
i wskaż katalog źródeł tradefed. Aby zaimportować te projekty Java open source, użyj kreatora
File > Import...-> General > Existing Projects into workspace"
. Znajdziesz je pod ścieżkami: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
Opcjonalnie, jeśli chcesz zobaczyć kod źródłowy
ddmlib
, dołącz kod źródłowy z gałęzi narzędzi niespakowanych, takiej jak /platform/tools/base/tools_r22/ddmlib/src/main/java/com/android/ddmlib/IDevice.java.Opcjonalnie, jeśli chcesz też wczytać projekty korzystające z pakietu CTS, zaimportuj:
test/suite_harness/common/util test/suite_harness/common/host-side/util test/suite_harness/common/host-side/tradefed
Autoformatowanie
UWAGA: pliki Requisite znajdują się w folderze development/ide/eclipse
w pełnej strukturze źródeł platformy. Aby uzyskać te pliki, musisz sprawdzić gałąź platformy, np. main
:/development/main/ide/eclipse/
Użyj plików preferencji w Eclipse, aby automatycznie ustawić narzędzie formatujące na Przewodnik stylistyczny Androida. Aby to zrobić w Studio:
- Kliknij Okno > Preferencje > Java > Styl kodu.
- W sekcji Formatowanie zaimportuj plik
android-formatting.xml
. - W sekcji Uporządkuj > Importy zaimportuj plik
android.importorder
.
Usuń spacje na końcu ciągu.
Aby zmusić Eclipse do usunięcia wszystkich końcowych spacji:
- Kliknij Okno > Preferencje -> Java -> Edytor -> Zapisz działania.
- Następnie Dodaj akcje > Konfiguruj > Kod > Karta Organizowanie > Formatowanie.
- Zaznacz pole Usuń spacje na końcu.
- Kliknij Zastosuj i zamknij.
Sprawdzanie stylu kodu
Podczas przesyłania listy zmian automatycznie uruchomiony zostanie haczyk przed przesłaniem, który sprawdzi format kodu: google-java-format
Pomaga to sformatować kod zgodnie ze wspólnym standardem.
Debugowanie Eclipse
Jeśli chcesz uruchomić kod TF za pomocą debugera w Eclipse, zalecamy, aby najpierw utworzyć test jednostkowy danego kodu, ponieważ będzie to najprostszy i najszybszy sposób na przetestowanie funkcjonalności.
Aby debugować test jednostkowy TF, kliknij go prawym przyciskiem myszy i wybierz Debuguj jako > test JUnit.
Aby debugować test funkcjonalny TF, wykonaj instrukcje z poprzedniej sekcji dotyczące uruchamiania testu funkcjonalnego, ale użyj menu Uruchom > Konfiguracje debugowania.
Aby debugować sam program TF, podczas uruchamiania dowolnej konfiguracji postępuj zgodnie z instrukcjami z poprzedniej sekcji dotyczącymi uruchamiania testu funkcjonalnego, ale podaj argumenty wiersza poleceń dla konfiguracji, którą chcesz uruchomić w kroku 4. Aby debugować konfigurację „instrument”, przejdź do menu Uruchom > Konfiguracja debugowania i ustaw kartę Argumenty w konfiguracji debugowania Eclipse na -- package <package to run> instrument
.
Debugowanie zdalne za pomocą Eclipse
Aby zdalnie debugować sesję tradefed uruchomioną z poziomu wiersza poleceń tradefed.sh
:
- Uruchom tradefed.sh z flagą debugowania:
TF_DEBUG=1 tradefed.sh
- Poczekaj, aż wyświetli się następujący komunikat z maszyny wirtualnej:
Listening for transport dt_socket at address: 10088
. Oznacza to, że JVM czeka na załączenie debugera na porcie10088
. - Dołącz do debugowania zdalnego w Eclipse w menu głównym: wybierz Uruchom > Debuguj Konfiguracje….
- W wyskakującym okienku w menu po lewej stronie wybierz Zdalna aplikacja Java.
- Na pasku czynności kliknij ikonę Nowa konfiguracja uruchomienia.
- Nazwij konfigurację i wybierz federację jako projekt.
- Wypełnij port, używając adresu podanego wcześniej.
- Przejdź na kartę Źródło i dodaj do ścieżki wyszukiwania źródła projekty tradefederation i google-tradefed.
- Kliknij Debugowanie, aby rozpocząć sesję debugowania.
Debuger łączy się z procesem JVM nasłuchującym, a terminal działający w tradefed.sh
wyświetla prompt tf>
.
Aby przejrzeć kod w trybie debugowania, ustaw punkt przerwania w Eclipse i wywołaj polecenie Tradefed (np. run <test>
) w terminalu. Aby debugować cokolwiek podczas uruchamiania TF, możesz najpierw ustawić punkt przerwania, a potem podłączyć debuger Eclipse.
WSKAZÓWKA: aby użyć innego portu, dodaj TF_DEBUG_PORT=nnn
do polecenia w kroku 1 powyżej. Możesz użyć tej metody nawet w środowisku produkcyjnym, jeśli chcesz zbadać tajemnicze błędy powodujące zawieszanie się aplikacji. W tym celu zmień wartość suspend=y
na suspend=n
w pliku tradefed.sh
i uruchom flagę debugowania. JVM nie będzie czekać na przyłączenie debugera, ale możesz to zrobić w dowolnym momencie, o ile proces jest nadal uruchomiony.
Debugowanie zdalne za pomocą JDB
Aby korzystać z debugera JDB, wykonaj czynności podobne do tych w Eclipse:
- Uruchom
tradefed.sh
z flagą debugowania:TF_DEBUG=1 tradefed.sh
- Poczekaj, aż wyświetli się komunikat z JVM:
Listening for transport dt_socket at address: 10088
. Połącz
jdb
. Na przykład w trybie croot:jdb -attach 10088 \ -sourcepath tools/tradefederation/core/src:vendor/google_tradefederation/core/src
Poczekaj na połączenie i zacznij debugować. Aby uzyskać dodatkową pomoc, uruchom
man jdb
.
Sprawdzanie pokrycia kodu
- Zainstaluj wtyczkę Eclemma.
- Kliknij Pomoc > Zainstaluj nowe oprogramowanie i wskaż w kreatorze adres: http://update.eclemma.org/.
- Po zainstalowaniu wybierz opcję Pokrycie jako > JUnit, aby przeprowadzić testowanie pokrycia kodu.