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ż do katalogu źródeł tradefed. - Ustaw zmienną ścieżki TRADEFED_ROOT w pliku
Window > Preferences > General > Workspace > Linked Resources
i wskaż katalog źródeł tradefed. Za pomocą kreatora
File > Import...-> General > Existing Projects into workspace"
możesz zaimportować te projekty Java open source, korzystając z tych ścieżek: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ż zaimportować projekty wiązek CTS, zaimportuj:
test/suite_harness/common/util test/suite_harness/common/host-side/util test/suite_harness/common/host-side/tradefed
Automatyczne formatowanie
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/
Aby automatycznie ustawić formatowanie zgodnie z Style Guide Androida, użyj plików preferencji w Eclipse. 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 kliknij Dodaj akcję > Skonfiguruj > Kod > Karta porządkowania > 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 w sformatowaniu kodu zgodnie ze wspólnym standardem.
Debugowanie Eclipse
Jeśli chcesz uruchomić kod TF za pomocą debugera w Eclipse, zalecamy najpierw utworzenie testu jednostkowego dla danego kodu, ponieważ będzie to najprostszy i najszybszy sposób na sprawdzenie jego działania.
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ę „instrumentu”, kliknij menu Uruchom > Konfiguracja debugowania, a na karcie Argumenty w konfiguracji debugowania Eclipse ustaw wartość -- 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
- Zaczekaj, aż pojawi się ten komunikat JVM:
Listening for transport dt_socket at address: 10088
Oznacza to, że JVM czeka na debuggera, aby połączyć się przez port10088
. - 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.
- Nadaj konfiguracji nazwę i jako projekt wybierz tradefederation.
- Wypełnij port, używając adresu podanego wcześniej.
- Przejdź na kartę Źródło i dodaj projekty tradefederation i google-tradefed do ścieżki wyszukiwania źródła.
- 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 zacznij od flagi 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
- Zaczekaj, aż pojawi się komunikat 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.