Zanim uruchomisz automatyczne testy CTS, przygotuj środowisko fizyczne, skonfiguruj stację roboczą i urządzenie, które testujesz.
Konfigurowanie środowiska fizycznego
Niektóre testy CTS wymagają użycia urządzeń zewnętrznych, które należy skonfigurować w pobliżu testowanego urządzenia. Aby skonfigurować środowisko fizyczne:
(opcjonalnie) Jeśli testowane urządzenie obsługuje Bluetooth LE, umieść co najmniej 3 nadajniki Bluetooth LE w odległości do 5 metrów od testowanego urządzenia, aby przeprowadzić test skanowania Bluetooth LE. Dodatkowo:
- Nie trzeba konfigurować beaconów ani emitować niczego konkretnego.
- Mogą to być dowolne beacony, w tym iBeacon, Eddystone, a nawet urządzenia symulujące beacony BLE.
Umieść telefon przed sceną, np. ścianą lub sufitem, w odległości odpowiadającej minimalnej odległości ogniskowej urządzenia. Dodatkowo:
- Scena musi być wystarczająco oświetlona, aby testowane czujniki mogły osiągnąć i utrzymać maksymalną skonfigurowaną docelową liczbę klatek na sekundę (FPS) określoną w
CONTROL_AE_TARGET_FPS_RANGE
. - Ta konfiguracja dotyczy wszystkich czujników kamery zgłoszonych przez
getCameraIdList
, ponieważ test iteruje po wymienionych urządzeniach i mierzy wydajność każdego z nich z osobna. - Jeśli testowane urządzenie obsługuje kamery zewnętrzne, np. kamery internetowe USB, podczas przeprowadzania testów CTS podłącz kamerę zewnętrzną. W przeciwnym razie testy CTS zakończą się niepowodzeniem.
- Scena musi być wystarczająco oświetlona, aby testowane czujniki mogły osiągnąć i utrzymać maksymalną skonfigurowaną docelową liczbę klatek na sekundę (FPS) określoną w
(opcjonalnie) Jeśli testowane urządzenie obsługuje globalny system pozycjonowania (GPS) lub inny globalny system nawigacji satelitarnej (GNSS), dostarcz do niego sygnał GNSS na odpowiednim poziomie sygnału do odbioru i obliczania lokalizacji. Dodatkowo:
- GPS musi być zgodny ze standardem ICD-GPS-200C.
- Sygnał GNSS może być dowolnego typu, w tym sygnałem z symulatora satelity lub wzmacniacza sygnałów zewnętrznych.
- Urządzenie możesz umieścić blisko okna, aby mogło bezpośrednio odbierać wystarczająco silny sygnał GNSS z satelity.
Upewnij się, że sieć Wi-Fi obsługuje protokoły IPv4 i IPv6, ma połączenie z internetem z DNS dla IPv4 i IPv6, obsługuje multicast IP i może traktować DUT jako izolowanego klienta.
Jeśli nie masz dostępu do natywnej sieci IPv6, sieci operatora IPv6 ani sieci VPN, aby przejść testy IPv6, użyj punktu dostępu Wi-Fi i tunelu IPv6.
Upewnij się, że na interfejsie Wi-Fi urządzenia DUT ustawione są flagi
UP
,BROADCAST
iMULTICAST
.Sprawdź, czy interfejs Wi-Fi ma przypisane adresy IPv4 i IPv6. Aby sprawdzić właściwości interfejsu Wi-Fi, uruchom polecenie
adb shell ifconfig
.(opcjonalnie) Jeśli testowane urządzenie obsługuje jednoczesne działanie Wi-Fi STA lub STA, skonfiguruj co najmniej 2 sieci Wi-Fi. Te sieci Wi-Fi muszą działać w różnych pasmach z różnymi identyfikatorami SSID lub w tym samym identyfikatorze SSID z różnymi identyfikatorami BSSID.
(opcjonalnie) Jeśli testowane urządzenie obsługuje czas błądzenia Wi-Fi (RTT), skonfiguruj urządzenie, które obsługuje RTT Wi-Fi:
- Umieść urządzenie Wi-Fi RTT w odległości nie większej niż 12 metrów od DUT.
- Włącz urządzenie Wi-Fi RTT.
Oto 2 rekomendowane urządzenia obsługujące Wi-Fi RTT: - Google Wifi - Punkt dostępu fitlet2 firmy Compulab (ustawiony na pasmo 40 MHz przy 5 GHz).
Konfigurowanie urządzenia stacjonarnego
Zanim uruchomisz automatyczne testy CTS, upewnij się, że komputer stacjonarny spełnia wymagania sprzętowe i dotyczące systemu operacyjnego oraz ma zainstalowane odpowiednie oprogramowanie, zgodnie z opisem w kolejnych sekcjach.
Wymagania dotyczące sprzętu do Google Meet
Komputer stacjonarny CTS powinien spełniać te wymagania sprzętowe lub je przekraczać:
64-bitowy system x86
Co najmniej 256 GB wolnego miejsca na dysku, aby pomieścić większą liczbę przypadków testowych CTS i zwiększoną rezerwację miejsca na stercie Javy w Tradefed.
co najmniej 32 GB pamięci RAM;
Spełnianie wymagań dotyczących systemu operacyjnego
Na komputerze deweloperskim musi być zainstalowana 64-bitowa dystrybucja Linuksa z biblioteką GNU C Library (glibc) w wersji 2.17 lub nowszej.
Aby CTS mógł prawidłowo określić ścieżkę, język systemu operacyjnego powinien być ustawiony na „angielski”.
Instalowanie oprogramowania na komputerze
Aby zainstalować odpowiednie oprogramowanie na komputery na potrzeby CTS:
Zainstaluj najnowsze wersje Android Debug Bridge (adb) i Android Asset Packaging Tool (AAPT2) oraz dodaj lokalizację tych narzędzi do ścieżki systemowej na komputerze:
- Aby zainstalować narzędzie wiersza poleceń
sdkmanager
, postępuj zgodnie z instrukcjami na początku dokumentacji Menedżera SDK. Link do pobrania narzędzi wiersza poleceń znajdziesz w sekcji Tylko narzędzia wiersza poleceń u dołu strony pobierania Android Studio. - Zaktualizuj ścieżkę systemową, aby uwzględnić lokalizację nowo zainstalowanego
sdkmanager
. - Za pomocą narzędzia
sdkmanager
zainstaluj najnowsze pakietyplatform-tools
ibuild-tools
. Te pakiety zawierają adb i AAPT2. Informacje o instalowaniu pakietów znajdziesz w artykule Instalowanie pakietów. - Zaktualizuj ścieżkę, aby uwzględnić lokalizację nowo zainstalowanych narzędzi adb i AAPT2.
- Sprawdź, czy adb i AAPT2 znajdują się w ścieżce.
- Aby zainstalować narzędzie wiersza poleceń
Zainstaluj odpowiednią wersję Java Development Kit (JDK):
- W przypadku Androida 11 lub nowszego zainstaluj JDK 11.
- W przypadku Androida 10 lub starszego zapoznaj się z artykułem Konfigurowanie CTS (AOSP 10 lub starszy).
(opcjonalnie) W przypadku Androida 13 i 14 zainstaluj virtualenv. Narzędzie virtualenv jest wymagane w przypadku testów na wielu urządzeniach.
Aby sprawdzić, czy Python jest zainstalowany, wpisz
python3
. Powinna się pojawić wersja Pythona i data, co oznacza, że Python jest prawidłowo zainstalowany.Pobierz i otwórz pakiety CTS z pobieralni pakietu CTS, które są zgodne z wersją Androida na Twoich urządzeniach i wszystkimi interfejsami binarnymi aplikacji (ABI) obsługiwanymi przez te urządzenia.
Pobierz i otwórz najnowszą wersję plików multimedialnych CTS. Pliki multimedialne zawierają klipy wideo z filmu Big Buck Bunny, które są chronione prawem autorskim należącym do Blender Foundation na podstawie licencji Creative Commons Uznanie autorstwa 3.0.
(opcjonalnie) Gdy uruchamiasz CTS po raz pierwszy, dynamicznie pobiera on niektóre pliki CTS związane z Mainline. W zależności od szybkości sieci pobieranie może wydłużyć czas działania CTS o 10 minut lub więcej.
Aby uniknąć tego dodatkowego czasu działania CTS, przed uruchomieniem CTS możesz pobrać pliki CTS związane z Mainline. Informacje o pobieraniu plików CTS związanych z Mainline znajdziesz w artykule Pobieranie plików CTS związanych z Mainline.
Przygotowywanie DUT
Po skonfigurowaniu komputera stacjonarnego musisz skonfigurować urządzenie poddawane testom.
Konfigurowanie testowanego urządzenia
Aby skonfigurować testowane urządzenie:
Upewnij się, że na testowanym urządzeniu jest zainstalowany obraz systemu oparty na kompilacji użytkownika, która jest znana jako zgodna (Android 4.0 lub nowszy) z nazwami kodowymi, tagami i numerami kompilacji, i że używa ona wariantu kompilacji
user
. Więcej informacji o wariantach kompilacji znajdziesz w sekcji Wybieranie celu.Jeśli DUT działa na Androidzie 13 lub nowszym, upewnij się, że kompilacja ma ustawioną wartość
ro.product.first_api_level
na poziomie API, z którym urządzenie zostało wprowadzone na rynek. Aby ustawić tę wartość, wprowadź w plikudevice.mk
tę zmianę:PRODUCT_SHIPPING_API_LEVEL := 21
Niektóre wymagania CTS zależą od kompilacji, z którą urządzenie zostało pierwotnie dostarczone. Na przykład urządzenia, które pierwotnie były dostarczane z wcześniejszymi wersjami, mogą być wyłączone z wymagań systemowych, które dotyczą urządzeń dostarczanych z późniejszymi wersjami. Prawidłowe wartości poziomu interfejsu API znajdziesz na stronie Kryptonimy, tagi i numery kompilacji. Więcej informacji o
ro.product.first_api_level
znajdziesz w sekcji Poziom interfejsu API dostawcy.W przypadku Androida 10 lub starszego zapoznaj się z artykułem Konfigurowanie CTS (AOSP 10 lub starszy).
Jeśli urządzenie obsługuje zarządzanie pakietami APEX:
- Pobierz pakiet APEX shim dla konkretnej wersji Androida i architektury sprzętu. Dwie kolumny po lewej stronie tabeli pakietów shim zawierają linki do pakietu do pobrania.
- Skopiuj pobrany pakiet do folderu
/system/apex
. - Zmień nazwę pliku na
com.android.apex.cts.shim.apex
.
Jeśli Twoje urządzenie nie obsługuje zarządzania pakietami APEX:
- Pobierz pakiety APEX shim dla konkretnej wersji Androida i architektury sprzętu. Dwie kolumny po prawej stronie tabeli shim packages zawierają linki do pakietów, które można pobrać.
- Skopiuj
CtsShim.apk
do/system/app/
- Zmień nazwę
CtsShim.apk
naCtsShimPrebuilt.apk
. - Skopiuj
CtsShimPriv.apk
do/system/priv-app/
- Zmień nazwę
CtsShimPriv.apk
naCtsShimPrivPrebuilt.apk
.
Jeśli urządzenie zgłasza więcej niż 1 element zabezpieczający:
- Pobierz
google-cardlet.cap
. - Skopiuj pobrany plik do
/data/uicc/cardlets/
.
- Pobierz
Jeśli urządzenie zgłasza więcej niż 1 bezpieczny element, zainstaluj przykładowy aplet w osadzonym bezpiecznym elemencie (eSE) DUT lub na karcie SIM używanej przez DUT. Więcej informacji znajdziesz w artykule Test CTS dla Secure Element.
Jeśli urządzenie nie ma wbudowanego ekranu, podłącz do niego ekran.
Jeśli urządzenie ma gniazdo karty pamięci, włóż do niego pustą kartę SD. Używaj karty SD obsługującej magistralę UHS (Ultra High Speed) o pojemności SDHC lub SDXC albo karty o klasie szybkości 10 lub wyższej, aby mieć pewność, że przejdzie ona test CTS.
Jeśli urządzenie ma gniazda na karty SIM, włóż do każdego z nich aktywowaną kartę SIM. Jeśli urządzenie obsługuje SMS-y, każda karta SIM musi mieć wypełnione pole numeru. W przypadku urządzeń z Androidem 12 lub nowszym wszystkie karty SIM muszą obsługiwać przechowywanie skróconych numerów wybierania (ADN). Wymaganie to spełniają karty GSM i USIM z plikiem dedykowanym do telekomunikacji (DFTelecom).
Upewnij się, że urządzenie ma kartę SIM z uprawnieniami operatora CTS spełniającą wymagania określone w sekcji Przygotowywanie karty UICC.
Konfigurowanie urządzenia
Aby skonfigurować urządzenie do testowania do używania z CTS, wykonaj te czynności.
Na urządzeniu:
Przywróć urządzenie do ustawień fabrycznych.
Ustaw język urządzenia na angielski (Stany Zjednoczone).
Jeśli urządzenie obsługuje dostosowywanie domyślnych czcionek, upewnij się, że domyślna rodzina czcionek bezszeryfowych jest ustawiona na Roboto.
Jeśli urządzenie ma GPS lub funkcję Wi-Fi albo sieć komórkową, włącz ustawienie lokalizacji.
Połącz się z siecią Wi-Fi, która obsługuje protokół IPv6, może traktować DUT jako odizolowanego klienta i ma połączenie z internetem. Wyjaśnienie dotyczące odizolowanych klientów znajdziesz w artykule Konfigurowanie środowiska fizycznego.
Upewnij się, że nie ustawiono wzoru ani hasła blokady.
Włącz debugowanie USB:
Otwórz Ustawienia > Informacje o telefonie i kliknij Numer kompilacji 7 razy. Opcje programisty pojawią się w kategorii ustawień System.
Kliknij Debugowanie USB.
Aby włączyć debugowanie USB na Androidzie 10 lub starszym, zapoznaj się z artykułem Konfigurowanie CTS (AOSP 10 lub starszy).
Ustaw czas w formacie 12-godzinnym.
Włącz Opcje programisty > Nie usypiaj.
Wyłącz weryfikację aplikacji przez USB:
Otwórz Opcje programisty.
Kliknij Weryfikuj aplikacje przez USB.
W Androidzie 13 lub nowszym włącz modem testowy:
Otwórz Opcje programisty.
Kliknij Zezwól na pozorowanie modemu.
To ustawienie jest wymagane w przypadku niektórych testów telefonicznych.
Na komputerze:
Uruchom przeglądarkę i zamknij ekran uruchamiania lub konfiguracji.
Podłącz testowane urządzenie do komputera stacjonarnego za pomocą kabla USB.
Jeśli system poprosi Cię o zaakceptowanie klucza RSA umożliwiającego debugowanie na tym komputerze, kliknij Zezwól na debugowanie USB.
Ustaw Roboto2 jako czcionkę bezszeryfową za pomocą ustawienia dostępnego dla użytkownika (nieukrytego).
Skopiuj pliki multimedialne CTS na urządzenie:
- Przejdź (
cd
) do ścieżki, w której pobrano i rozpakowano pliki multimedialne. Zmień uprawnienia do pliku:
chmod u+x copy_media.sh
Skopiuj pliki:
Aby skopiować klipy w rozdzielczości do 720 x 480, uruchom:
./copy_media.sh 720x480
Jeśli nie masz pewności, jaka jest maksymalna rozdzielczość, skopiuj wszystkie pliki:
./copy_media.sh all
Jeśli jest wiele urządzeń DUT, dodaj na końcu opcję seryjną (
-s
) konkretnego urządzenia. Aby na przykład skopiować plik o rozdzielczości do 720x480 na urządzenie o numerze seryjnym 1234567, uruchom to polecenie:./copy_media.sh 720x480 -s 1234567
- Przejdź (
Pobieranie plików CTS związanych z Mainline
Aby pobrać pliki CTS związane z Mainline:
Aby sprawdzić poziom interfejsu API Androida na urządzeniu, uruchom to polecenie:
adb shell getprop ro.build.version.sdk
Aby pobrać pliki Mainline CTS, postępuj zgodnie z instrukcjami w
download_mcts.sh
skrypcie.Pobieranie trwa co najmniej 10 minut, w zależności od szybkości sieci.
Pakiety shim
W tabeli poniżej znajdziesz listę pakietów dostępnych dla poszczególnych wersji i architektur urządzeń:
Wersja urządzenia | Pakiety (jeśli APEX jest obsługiwany) | Pakiety (jeśli APEX nie jest obsługiwany) | ||
---|---|---|---|---|
WŁĄCZ WYKRYWANIE | x86 | WŁĄCZ WYKRYWANIE | x86 | |
Android 16 |
16-arm-release
|
android16-x86-release
|
android16-arm-CtsShim.apk
|
android16-x86-CtsShim.apk
|
Android 15 |
15-arm-release
|
android15-x86-release
|
android15-arm-CtsShim.apk
|
android15-x86-CtsShim.apk
|
Android 14 |
android14-arm-release
|
android14-x86-release
|
android14-arm-CtsShim.apk
|
android14-x86-CtsShim.apk
|
Android 13 |
android13-arm-release
|
android13-x86-release
|
android13-arm-CtsShim.apk
|
android13-x86-CtsShim.apk
|
Android 12 |
android12-arm-release
|
android12-x86-release
|
android12-arm-CtsShim.apk
|
android12-x86-CtsShim.apk
|
Android 11 |
android11-arm-release
|
android11-x86-release
|
android11-arm-CtsShim.apk
|
android11-x86-CtsShim.apk
|
Android 10 |
android10-release
|
android10-arm-CtsShim.apk
|
android10-x86-CtsShim.apk
|
|
Android 9, O i O-MR1 | Nie dotyczy | Nie dotyczy |
arm-CtsShim.apk
|
x86-CtsShim.apk
|
Co dalej?
Po przeczytaniu tego dokumentu przejdź do sekcji Uruchamianie automatycznych testów CTS.