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,- BROADCASTi- MULTICAST.
- 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 sdkmanagerzainstaluj najnowsze pakietyplatform-toolsibuild-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_levelna poziomie API, z którym urządzenie zostało wprowadzone na rynek. Aby ustawić tę wartość, wprowadź w pliku- device.mktę 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_levelznajdziesz 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.apkdo/system/app/
- Zmień nazwę CtsShim.apknaCtsShimPrebuilt.apk.
- Skopiuj CtsShimPriv.apkdo/system/priv-app/
- Zmień nazwę CtsShimPriv.apknaCtsShimPrivPrebuilt.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.shskrypcie.- 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.
