Aby skonfigurować Tradefed za pomocą Eclipse, wykonaj te czynności.
Utwórz osobny obszar roboczy do tworzenia Trade Federation. Nie używaj ponownie obszaru roboczego, który jest już używany do tworzenia aplikacji na urządzenia z Androidem.
W razie potrzeby możesz pobrać Eclipse IDE for Java developers ze strony:eclipse.org/downloads
Tworzenie projektów
- Uruchom polecenie make raz z wiersza poleceń. Spowoduje to utworzenie bibliotek zewnętrznych, od których zależą projekty poniżej.
- Ustaw zmienną ścieżki klasy TRADEFED_ROOT w
Window > Preferences > Java > Build Path> Classpath Variables
i skieruj ją do głównego katalogu źródłowego Tradefed. - Ustaw zmienną ścieżki TRADEFED_ROOT w
Window > Preferences > General > Workspace > Linked Resources
i skieruj ją do głównego katalogu źródłowego Tradefed. Użyj kreatora
File > Import...-> General > Existing Projects into workspace"
, aby zaimportować te projekty Java typu open source w ramach 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ć
ddmlib
kod źródłowy, dołącz go z gałęzi narzędzi niepowiązanych, np. /platform/tools/base/tools_r22/ddmlib/src/main/java/com/android/ddmlib/IDevice.java.Opcjonalnie: jeśli chcesz też wczytać projekty platformy 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 pełnym drzewie źródłowym platformy. W tym celu musisz pobrać gałąź platformy, np.android-latest-release
, aby uzyskać te pliki:
/development/android16-release/ide/eclipse/
Użyj plików preferencji w Eclipse, aby automatycznie ustawić formatowanie zgodnie z przewodnikiem po stylu Androida. Aby to zrobić w Studio:
- Kliknij Window > Preferences > Java > Code Style (Okno > Ustawienia > Java > Styl kodu).
- W sekcji Formater zaimportuj plik
android-formatting.xml
. - W sekcji Uporządkuj > Importy zaimportuj plik
android.importorder
.
Usuwanie spacji na końcu
Aby wymusić usunięcie wszystkich spacji na końcu w Eclipse:
- Kliknij Window > Preferences –> Java –> Editor –> Save Actions (Okno > Preferencje –> Java –> Edytor –> Działania podczas zapisywania).
- Następnie kliknij Dodatkowe działania –> Skonfiguruj –> Kod –> Karta Organizowanie –> Formater.
- Zaznacz Usuń końcowe białe znaki.
- Kliknij Zastosuj i zamknij.
Sprawdzanie stylu kodu
Podczas przesyłania listy zmian zostanie uruchomiony automatyczny hook przed przesłaniem, który sprawdzi format kodu: google-java-format
Pomaga to w formatowaniu kodu zgodnie z ogólnie przyjętym standardem.
Debugowanie Eclipse
Jeśli chcesz uruchomić kod TF w debugerze w Eclipse, zalecamy najpierw utworzenie testu jednostkowego dla danego kodu, ponieważ będzie to najprostszy i najszybszy sposób na sprawdzenie jego funkcjonalności.
Aby debugować test jednostkowy TF, 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 > 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 w kroku 4 podaj argumenty wiersza poleceń dla konfiguracji, którą chcesz uruchomić. Aby debugować konfigurację „instrumentu”, otwórz menu Run > Debug configuration (Uruchom > Konfiguracja debugowania) i na karcie Arguments (Argumenty) w konfiguracji debugowania Eclipse ustaw wartość -- package <package to run> instrument
.
Zdalne debugowanie za pomocą Eclipse
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 ten prompt z JVM:
Listening for transport dt_socket at address: 10088
This means the JVM is waiting for debugger to attach at port10088
. - Dołączanie za pomocą zdalnego debugowania w Eclipse z menu głównego: wybierz Uruchom > Konfiguracje debugowania....
- W oknie, które się pojawi, w menu po lewej stronie wybierz Remote Java Application (Zdalna aplikacja Java).
- Na pasku działań kliknij ikonę Nowa konfiguracja uruchamiania.
- Nadaj konfiguracji dowolną nazwę i jako projekt wybierz tradefederation.
- Wypełnij port, używając podanego wcześniej adresu.
- Przejdź na kartę Źródło i dodaj projekty tradefederation oraz google-tradefed do ścieżki wyszukiwania źródła.
- Aby rozpocząć sesję debugowania, kliknij Debuguj.
Debuger dołącza do procesu JVM, który nasłuchuje, a w terminalu z uruchomionym tradefed.sh
pojawia się prompt tf>
.
Aby przejść przez kod w trybie debugowania, ustaw punkt przerwania w Eclipse i wywołaj polecenie Tradefed (np. run <test>
) w terminalu. Aby debugować dowolny element podczas uruchamiania TF, możesz najpierw ustawić punkt przerwania, a następnie dołączyć debugger Eclipse.
WSKAZÓWKA: aby użyć innego portu, dodaj TF_DEBUG_PORT=nnn
do polecenia w kroku 1 powyżej. Możesz nawet używać tej opcji w środowisku produkcyjnym, jeśli chcesz zbadać tajemnicze błędy zawieszania się: zmień suspend=y
na suspend=n
w tradefed.sh
i zacznij od flagi debugowania. JVM nie będzie czekać na przyłączenie debugera, ale możesz to zrobić w dowolnym momencie, dopóki proces jest uruchomiony.
Debugowanie zdalne za pomocą JDB
Aby użyć debugera Java JDB, wykonaj czynności podobne do tych, które wykonujesz w przypadku Eclipse:
- Uruchom
tradefed.sh
z flagą debugowania:TF_DEBUG=1 tradefed.sh
- Poczekaj, aż pojawi się prompt z JVM:
Listening for transport dt_socket at address: 10088
. Połącz
jdb
. Na przykład w przypadku croot uruchom:jdb -attach 10088 \ -sourcepath tools/tradefederation/core/src:vendor/google_tradefederation/core/src
Poczekaj na połączenie i zacznij debugować. Aby uzyskać więcej informacji, uruchom
man jdb
.
Sprawdzanie pokrycia kodu
- Zainstaluj wtyczkę Eclemma.
- Kliknij Help (Pomoc) > Install New Software (Zainstaluj nowe oprogramowanie) i wskaż kreatorowi: http://update.eclemma.org/
- Po zainstalowaniu wybierz opcję testu Coverage As > JUnit, aby przeprowadzić test pokrycia kodu.