Zanim uruchomisz automatyczne testy CTS, przygotuj środowisko fizyczne, skonfiguruj stanowisko robocze i urządzenie, które testujesz.
Konfigurowanie środowiska fizycznego
Niektóre testy CTS wymagają użycia urządzeń zewnętrznych skonfigurowanych w pobliżu DUT. Aby skonfigurować środowisko fizyczne:
(opcjonalnie) Jeśli urządzenie DUT obsługuje Bluetooth LE, umieść co najmniej 3 beacony Bluetooth LE w odległości 5 metrów od urządzenia DUT na potrzeby testowania skanowania Bluetooth LE. Dodatkowo:
- Nie trzeba ich konfigurować ani emitować żadnych konkretnych sygnałów.
- Beacony mogą być dowolnego typu, 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ć odpowiednio oświetlona, aby umożliwić testowanym czujnikom osiągnięcie i utrzymanie maksymalnej konfigurowanej wartości docelowej liczby klatek na sekundę (FPS), jak określono w
CONTROL_AE_TARGET_FPS_RANGE
. - Ta konfiguracja dotyczy wszystkich czujników kamery zgłoszonych przez
getCameraIdList
, ponieważ test przechodzi przez wymienione urządzenia i mierzy wydajność indywidualnie. - Jeśli urządzenie do testowania obsługuje kamery zewnętrzne, takie jak kamery internetowe USB, podłącz kamerę zewnętrzną podczas uruchamiania CTS. W przeciwnym razie testy CTS nie przejdą.
- Scena musi być odpowiednio oświetlona, aby umożliwić testowanym czujnikom osiągnięcie i utrzymanie maksymalnej konfigurowanej wartości docelowej liczby klatek na sekundę (FPS), jak określono w
(opcjonalnie) Jeśli urządzenie DUT obsługuje globalny system pozycjonowania (GPS) lub inny globalny system nawigacji satelitarnej (GNSS), podaj sygnał GNSS do urządzenia DUT na odpowiednim poziomie sygnału do odbioru i obliczenia lokalizacji. Dodatkowo:
- Urządzenie GPS musi być zgodne ze standardem ICD-GPS-200C.
- Sygnał GNSS może być dowolnego typu, w tym symulatora satelity lub wzmacniacza sygnałów zewnętrznych.
- Możesz umieścić DUT w pobliżu okna, aby mógł bezpośrednio odbierać sygnał GNSS z satelity.
Upewnij się, że sieć Wi-Fi obsługuje IPv4 i IPv6, ma połączenie z internetem z DNS dla IPv4 i IPv6, obsługuje multicast IP oraz może traktować DUT jako odizolowanego 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 w urządzeniu testowym są ustawione flagi
UP
,BROADCAST
iMULTICAST
w interfejsie Wi-Fi.Sprawdź, czy interfejs Wi-Fi ma przypisane adresy IPv4 i IPv6. Aby sprawdzić właściwości interfejsu Wi-Fi, uruchom
adb shell ifconfig
.(opcjonalnie) Jeśli urządzenie DUT obsługuje wielozadaniowość Wi-Fi STA lub STA, skonfiguruj co najmniej 2 sieci Wi-Fi. Sieci Wi-Fi muszą działać na różnych pasmach z różnymi identyfikatorami SSID lub na tym samym identyfikatorze SSID z różnymi identyfikatorami BSSID.
(opcjonalnie) Jeśli urządzenie DUT obsługuje czas błądzenia (RTT) Wi-Fi, skonfiguruj urządzenie, które obsługuje RTT Wi-Fi:
- Umieść urządzenie RTT Wi-Fi w odległości do 12 metrów od DUT.
- Włącz urządzenie RTT Wi-Fi.
Oto 2 zalecane urządzenia obsługujące Wi-Fi RTT: - Google Wifi - punkt dostępu fitlet2 firmy Compulab (ustaw pasmo 40 MHz na 5 GHz).
Konfigurowanie komputera stacjonarnego
Zanim uruchomisz automatyczne testy CTS, sprawdź, czy Twój komputer stacjonarny spełnia wymagania dotyczące sprzętu i systemu operacyjnego oraz czy ma zainstalowane odpowiednie oprogramowanie zgodnie z opisem w następnych sekcjach.
Wymagania sprzętowe Meet
Komputer stacjonarny CTS powinien spełniać te wymagania sprzętowe lub przekraczać je:
64-bitowy system x86
co najmniej 256 GB wolnego miejsca na dysku, aby uwzględnić zwiększoną liczbę przypadków testowych CTS i zwiększenie rezerwacji miejsca na stos w Java w Tradefed;
co najmniej 32 GB pamięci RAM,
Spełnianie wymagań systemu operacyjnego
Na komputerze deweloperskim musi być zainstalowana 64-bitowa dystrybucja Linuksa z biblioteką GNU C Library (glibc) w wersji 2.17 lub nowszej.
Instalowanie oprogramowania na komputer
Aby zainstalować odpowiednie oprogramowanie na komputer do korzystania z CTS:
Zainstaluj najnowsze wersje narzędzi Android Debug Bridge (adb) i Android Asset Packaging Tool (AAPT2) oraz dodaj ich lokalizację do ścieżki systemowej komputera:
- Aby zainstalować narzędzie wiersza poleceń
sdkmanager
, wykonaj instrukcje podane na początku dokumentacji Menedżera pakietu SDK. Link do pobrania narzędzi wiersza poleceń znajduje się w sekcji Tylko narzędzia wiersza poleceń na dole strony pobierania Android Studio. - Zaktualizuj ścieżkę systemową, aby uwzględnić lokalizację nowo zainstalowanego
sdkmanager
. - Za pomocą
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ę na ścieżce.
- Aby zainstalować narzędzie wiersza poleceń
Zainstaluj odpowiednią wersję pakietu 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 lub nowszego zainstaluj virtualenv. Narzędzie virtualenv jest wymagane do testów na wielu urządzeniach.
Aby sprawdzić, czy Python jest zainstalowany, wpisz
python3
. Powinny pojawić się wersja i data Pythona, co oznacza, że jest on prawidłowo zainstalowany.Pobierz i otwórz pakiety CTS z Compatibility Test Suite Downloads, które odpowiadają wersji Androida na Twoich urządzeniach, oraz wszystkie interfejsy binarne aplikacji (ABI), które obsługują Twoje urządzenia.
Pobierz i otwórz najnowszą wersję plików multimedialnych CTS. Pliki multimedialne obejmują klipy wideo z filmu Big Buck Bunny, które są chronione prawem autorskim przez Blender Foundation na mocy licencji Creative Commons Uznanie autorstwa 3.0.
(opcjonalnie) Gdy uruchomisz CTS po raz pierwszy, dynamicznie pobierze 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 co najmniej 10 minut.
Aby uniknąć tego dodatkowego czasu działania CTS, możesz pobrać pliki CTS związane z Mainline przed uruchomieniem CTS. Informacje o pobieraniu plików CTS związanych z Mainline znajdziesz w artykule Pobieranie plików CTS związanych z Mainline.
Przygotowanie urządzenia DUT
Po skonfigurowaniu komputera musisz skonfigurować urządzenie DUT.
Konfigurowanie DUT
Aby skonfigurować DUT:
Upewnij się, że DUT ma zainstalowany obraz systemu oparty na kompatybilnej kompilacji dla użytkowników (Android 4.0 lub nowszej) z nazwy kodów, tagów i numerów kompilacji i korzysta z wariantu kompilacji
user
. Więcej informacji o wariantach kompilacji znajdziesz w sekcji Wybieranie docelowego urządzenia.Jeśli urządzenie testowe ma zainstalowany Android 13 lub nowszy, sprawdź, czy w wersji
ro.product.first_api_level
jest ustawiony poziom interfejsu API, z którym urządzenie zostało wprowadzone na rynek. Aby ustawić tę wartość, wprowadź tę zmianę w plikudevice.mk
: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 wersjami starszymi, mogą nie spełniać wymagań systemowych obowiązujących w przypadku urządzeń z wersjami nowszymi. Aby dowiedzieć się, jakie wartości poziomu interfejsu API są prawidłowe, przeczytaj artykuł Kryptonimy, tagi i numery kompilacji. Więcej informacji o
ro.product.first_api_level
znajdziesz w dokumentacji poziomu 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ętowej. 2 kolumny po lewej stronie w tabeli pakiety shim zawierają linki do pakietów 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ętowej. 2 kolumny po prawej stronie w tabeli pakiety shim zawierają linki do pakietów do pobrania.
- 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 zabezpieczony:
- Pobierz plik
google-cardlet.cap
. - Skopiuj pobrany plik do folderu
/data/uicc/cardlets/
.
- Pobierz plik
Jeśli urządzenie zgłasza więcej niż 1 element zabezpieczeń, zainstaluj przykładowy applet w wbudowanym elemencie zabezpieczeń (eSE) urządzenia testowego lub na karcie SIM używanej przez to urządzenie. Więcej informacji znajdziesz w teście CTS dla elementu zabezpieczeń.
Jeśli urządzenie nie ma wbudowanego ekranu, podłącz do niego ekran.
Jeśli urządzenie ma gniazdo na kartę pamięci, włóż pustą kartę SD. Użyj 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 test CTS.
Jeśli urządzenie ma gniazda na karty SIM, włóż kartę SIM do każdego gniazda. Jeśli urządzenie obsługuje SMS-y, każda karta SIM musi mieć wypełnione własne pole numeru. W przypadku urządzeń z Androidem 12 lub nowszym wszystkie karty SIM muszą obsługiwać przechowywanie skróconych numerów kierunkowych. Wymagania te spełniają karty GSM i USIM z pliku dedykowanego operatorowi telekomunikacyjnemu (DF Telecom).
Upewnij się, że urządzenie ma kartę SIM z uprawnieniami operatora CTS spełniającymi wymagania określone w artykule Przygotowanie karty UICC.
Konfigurowanie DUT
Aby skonfigurować DUT do użycia z CTS, wykonaj te czynności.
W przypadku testu DUT:
Przywróć dane fabryczne na urządzeniu.
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 bezszeryfowego to Roboto.
Jeśli na urządzeniu jest GPS lub funkcja Wi-Fi lub sieci komórkowej, włącz ustawienie lokalizacji.
Połącz się z siecią Wi-Fi, która obsługuje IPv6, może traktować urządzenie DUT jako odizolowanego klienta i ma połączenie z internetem. Wyjaśnienie dotyczące izolowanych klientów znajdziesz w artykule Konfigurowanie środowiska fizycznego.
Upewnij się, że nie ustawiono wzoru blokady ani hasła.
Włącz debugowanie USB:
Otwórz Ustawienia > Informacje o telefonie i kliknij Numer kompilacji 7 razy. Opcje programisty znajdują się w kategorii ustawień System.
Kliknij Debugowanie przez USB.
Aby włączyć debugowanie przez USB w Androidzie 10 lub starszym, przeczytaj artykuł Konfigurowanie CTS (AOSP 10 lub starsza).
Ustaw czas w formacie 12-godzinnym.
Włącz Opcje programisty > Nie przerywaj.
Wyłączanie weryfikacji aplikacji przez USB:
Otwórz Opcje programisty.
Kliknij Weryfikuj aplikacje przez USB.
W Androidzie 13 lub nowszym włącz fałszywy modem:
Otwórz Opcje programisty.
Kliknij Zezwól na pozorowanie modemu.
To ustawienie jest wymagane w przypadku niektórych testów telefonii.
Na komputerze:
Uruchom przeglądarkę i zamknij wszystkie ekrany uruchamiania lub konfiguracji.
Połącz urządzenie DUT z komputerem stacjonarnym za pomocą kabla USB.
Jeśli system poprosi Cię o zaakceptowanie klucza RSA umożliwiającego debugowanie na tym komputerze, kliknij Zezwalaj na debugowanie przez USB.
Ustaw Roboto2 jako czcionkę bezszeryfową, używając dostępnej dla użytkownika opcji (nie ukrytej).
Skopiuj pliki multimediów CTS na urządzenie DUT:
- Przejdź (
cd
) do ścieżki, na której pobrane i rozpakowane pliki multimedialne są przechowywane. Zmień uprawnienia pliku:
chmod u+x copy_media.sh
Skopiuj pliki:
Aby skopiować klipy o rozdzielczości do 720 x 480, uruchom:
./copy_media.sh 720x480
Jeśli nie masz pewności co do maksymalnej rozdzielczości, skopiuj wszystkie pliki:
./copy_media.sh all
Jeśli jest wiele urządzeń DUT, dodaj na końcu numer seryjny (
-s
) konkretnego urządzenia. Aby na przykład skopiować obraz o rozdzielczości do 720 x 480 na urządzenie o numerze seryjnym 1234567, uruchom:./copy_media.sh 720x480 -s 1234567
- Przejdź (
Pobieranie plików CTS związanych z Mainline
Aby pobrać pliki CTS związane z Mainline:
Aby poznać poziom interfejsu API Androida na urządzeniu, wykonaj te czynności:
adb shell getprop ro.build.version.sdk
Aby pobrać pliki Mainline CTS, postępuj zgodnie z instrukcjami w skrypcie
download_mcts.sh
.W zależności od szybkości sieci pobieranie może potrwać co najmniej 10 minut.
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 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 automatycznego uruchamiania testów CTS.