Wykonaj poniższe kroki, aby skonfigurować Tradefed przy użyciu Eclipse.
Utwórz oddzielny obszar roboczy do rozwijania Federacji Handlowej. Nie wykorzystuj ponownie obszaru roboczego już wykorzystanego do programowania urządzeń z systemem Android.
W razie potrzeby możesz pobrać środowisko Eclipse IDE dla programistów Java ze strony: eclipse.org/downloads
Twórz projekty
- Uruchom make raz z wiersza poleceń. Spowoduje to zbudowanie zewnętrznych bibliotek zależnych od poniższych projektów.
- Ustaw zmienną ścieżki klasy TRADEFED_ROOT w
Window > Preferences > Java > Build Path> Classpath Variables
i wskaż ją na źródłowy katalog główny, który podlega wymianie - Ustaw zmienną ścieżki TRADEFED_ROOT w
Window > Preferences > General > Workspace > Linked Resources
i wskaż ją na źródłowy katalog główny, który podlega wymianie Użyj kreatora
File > Import...-> General > Existing Projects into workspace"
aby przenieść te projekty Java typu open source do następujących ś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 uwolnionej gałęzi narzędzi, takiej jak /platform/tools/base/tools_r22/ddmlib/src/main/java/com/android/ddmlib/IDevice.java .Opcjonalnie, jeśli chcesz także załadować 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: Wymagane pliki znajdują się w development/ide/eclipse
w drzewie źródeł pełnej platformy. Będziesz więc musiał sprawdzić gałąź platformy, taką jak main
aby uzyskać te pliki: /development/main/ide/Eclipse/
Użyj plików preferencji w Eclipse, aby automatycznie ustawić formater na przewodnik po stylu Androida. Aby to zrobić w Studio:
- Przejdź do opcji Okno > Preferencje > Java > Styl kodu .
- W obszarze Formatter zaimportuj plik
android-formatting.xml
. - W obszarze Organizuj > Importy zaimportuj plik
android.importorder
.
Usuń końcowe spacje
Aby zmusić Eclipse do usunięcia wszystkich końcowych białych znaków:
- Przejdź do Okno > Preferencje -> Java -> Edytor -> Zapisz akcje .
- Następnie Dodatkowe akcje -> Konfiguruj -> Kod > zakładka Organizowanie -> Formater .
- Zaznacz opcję Usuń końcowe spacje .
- Kliknij Zastosuj i zamknij .
Sprawdź styl kodu
Podczas przesyłania listy zmian zostanie uruchomiony automatyczny hak do wstępnego przesyłania, aby sprawdzić format kodu: google-java-format
Pomaga to w sformatowaniu kodu zgodnie ze wspólnym standardem.
Debuguj Eclipse
Jeśli chcesz uruchomić kod TF za pomocą debugera w Eclipse, zaleca się najpierw utworzenie testu jednostkowego dla danego kodu, ponieważ będzie to najprostszy i najszybszy sposób wykorzystania funkcjonalności.
Aby debugować test jednostkowy TF, po prostu kliknij go prawym przyciskiem myszy i wybierz Debuguj jako > Test JUnit .
Aby debugować test funkcjonalny TF, postępuj zgodnie z instrukcjami z poprzedniej sekcji dotyczącymi uruchamiania testu funkcjonalnego, ale użyj menu Uruchom > Debuguj konfiguracje .
Aby zdebugować sam program TF, podczas uruchamiania dowolnej konfiguracji, postępuj zgodnie z instrukcjami z poprzedniej sekcji dotyczącymi uruchamiania testu funkcjonalnego, ale w kroku 4 podaj argumenty wiersza poleceń dla konfiguracji, którą chcesz uruchomić. Aby więc zdebugować konfigurację „instrumentu”, przejdź do menu konfiguracyjnego Uruchom > Debuguj i ustaw zakładkę Argumenty w konfiguracji debugowania Eclipse na -- package <package to run> instrument
.
Zdalne debugowanie za pomocą Eclipse
Wykonaj poniższe kroki, aby zdalnie debugować sesję Tradefed rozpoczętą z wiersza poleceń tradefed.sh
:
- Uruchom tradefed.sh z flagą debugowania:
TF_DEBUG=1 tradefed.sh
- Poczekaj, aż zobaczysz komunikat z maszyny JVM:
Listening for transport dt_socket at address: 10088
Oznacza to, że maszyna JVM czeka na podłączenie debugera do portu10088
. - Dołącz za pomocą zdalnego debugowania Eclipse z menu głównego: Wybierz Uruchom > Debuguj konfiguracje... .
- W wyskakującym oknie dialogowym wybierz z lewego menu opcję Remote Java Application .
- Kliknij ikonę konfiguracji nowego uruchomienia na pasku akcji.
- Nazwij konfigurację według własnego uznania i jako projekt wybierz federację handlową .
- Wypełnij port, korzystając z 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 opcję Debuguj , aby rozpocząć sesję debugowania.
Debuger przyłącza się do nasłuchującego procesu JVM, a terminal, na którym działa tradefed.sh
wyświetla zachętę tf>
.
Aby przejść przez kod w trybie debugowania, ustaw punkt przerwania w Eclipse i wywołaj polecenie Tradefed (tzn. run <test>
) w terminalu. Aby debugować cokolwiek podczas uruchamiania TF, możesz najpierw ustawić punkt przerwania, a następnie podłączyć debuger Eclipse.
WSKAZÓWKA: Aby użyć alternatywnego portu, dodaj TF_DEBUG_PORT=nnn
do polecenia w kroku 1 powyżej. Możesz nawet użyć tego w środowisku produkcyjnym, jeśli masz tajemnicze błędy związane z zawieszaniem się do zbadania: zmień suspend=y
na suspend=n
w tradefed.sh
i zacznij od flagi debugowania. JVM nie będzie czekać na dołączenie debugera, ale możesz to zrobić w dowolnym momencie, o ile proces nadal działa.
Zdalne debugowanie przy użyciu JDB
Aby użyć Java Debugger JDB, wykonaj kroki podobne do tych dla Eclipse:
- Uruchom
tradefed.sh
z flagą debugowania:TF_DEBUG=1 tradefed.sh
- Poczekaj, aż zobaczysz monit od JVM:
Listening for transport dt_socket at address: 10088
. Połącz
jdb
. Na przykład z uruchomienia croot:jdb -attach 10088 \ -sourcepath tools/tradefederation/core/src:vendor/google_tradefederation/core/src
Poczekaj na połączenie i debuguj! Uruchom
man jdb
, aby uzyskać dodatkową pomoc.
Sprawdź pokrycie kodu
- Zainstaluj wtyczkę Eclemma .
- Przejdź do Pomoc > Zainstaluj nowe oprogramowanie i wskaż kreatorowi adres: http://update.eclemma.org/
- Po zainstalowaniu wybierz opcję Test pokrycia jako > JUnit, aby przeprowadzić analizę pokrycia kodu.