Korzystanie z weryfikatora CTS

Weryfikator Compatibility Test Suite (CTS Verifier) uzupełnia pakiet Compatibility Test Suite (CTS). Pakiet CTS sprawdza interfejsy API i funkcje, które można zautomatyzować, a narzędzie CTS Verifier umożliwia przeprowadzenie testów interfejsów API i funkcji, których nie można przetestować na urządzeniu stacjonarnym bez ręcznego wprowadzania danych lub pozycjonowania, takich jak jakość dźwięku, ekran dotykowy, akcelerometr i kamera.

Wymagania

Zanim uruchomisz narzędzie CTS Verifier, upewnij się, że masz:

  • Urządzenie z Androidem, które zostało zweryfikowane pod kątem zgodności z interfejsem API Androida i przeszło test CTS. To jest testowane urządzenie.
  • Komputer z systemem Linux i portem zgodnym z USB 2.0. Wszystkie połączenia z badanym urządzeniem przechodzą przez ten port.
  • Drugie urządzenie z Androidem z obsługiwaną technologią Bluetooth, Wi-Fi Direct, Wi-Fi Aware, UWB (jeśli DUT obsługuje UWB) i emulacji karty hosta NFC (HCE).
  • Router Wi-Fi skonfigurowany z nazwą i hasłem punktu dostępu. Router powinien mieć możliwość odłączenia się od internetu, ale nie wyłączania zasilania.

Przygotuj też statywy, uchwyty na urządzenia i wstępnie zmierzone odległości wymagane do przeprowadzenia testów pomiaru odległości (odległości zbliżeniowej) w przypadku UWB, Wi-Fi NAN i Bluetooth RSSI. Więcej informacji znajdziesz w artykule Kalibrowanie obecności.

Wymagania dotyczące kart UICC w przypadku testów NFC

Weryfikator CTS zawiera te przypadki testowe NFC:

  • Field-off (używa danych transakcji z 0x54)
  • Odznacz (używa danych o transakcjach z 0x52)
  • Polecenie HCI (0025000000) (korzysta z danych transakcji z 0x02)

Testy zdarzeń transakcji wymagają 2 urządzeń, z których jedno musi mieć kartę UICC Secure Element z tymi regułami dostępu:

  • Hash pliku APK CtsVerifier: 61:ED:37:7E:85:D3:86:A8:DF:EE:6B:86:4B:D8:5B:0B:FA:A5:AF:81
  • Autoryzowany identyfikator aplikacji (AID) umożliwiający dostęp do zdarzeń NFC: 0xA000000476416E64726F696443545341

Po stronie emulatora oczekujemy, że zdarzenie transakcji spowoduje przesunięcie odpowiedniej aktywności na pierwszy plan.

Konfiguracja

Zmień tryb nawigacji systemowej urządzenia testowego na tryb 3 przycisków:

  1. Wybierz Ustawienia.
  2. Kliknij kolejno System > Gesty > Nawigacja w systemie.
  3. Wybierz dowolny tryb nawigacji przy użyciu przycisków, najlepiej tryb 3 przycisków, jeśli jest dostępny.

Aby skonfigurować środowisko testowe weryfikatora CTS:

  1. Na komputerze z systemem Linux:

    • Przed zainstalowaniem narzędzia CTS Verifier uruchom to polecenie, aby umożliwić dostęp do interfejsów innych niż SDK.

      adb shell settings put global hidden_api_policy 1
      
    • Zainstaluj Android Studio.

    • Pobierz plik APK weryfikatora CTS dla wersji Androida, którą chcesz przetestować.

  2. Podłącz urządzenie do testów do komputera z Linuxem.

  3. Za pomocą terminala na komputerze z Linuxem zainstaluj CtsVerifier.apk na urządzeniu testowym.

    adb install -r -g CtsVerifier.apk
    
  4. W przypadku Androida 10 lub nowszego uruchom to polecenie, aby przyznać aplikacji uprawnienia do tworzenia raportu.

    adb shell appops set com.android.cts.verifier android:read_device_identifiers allow
    
  5. W Androidzie 11 i nowszych uruchom to polecenie, aby zezwolić na zapisywanie raportów w określonym przez siebie katalogu w zewnętrznym katalogu najwyższego poziomu urządzenia.

    adb shell appops set com.android.cts.verifier MANAGE_EXTERNAL_STORAGE 0
    
  6. W przypadku Androida 13 lub nowszego uruchom to polecenie, aby umożliwić dostęp do testowego interfejsu API dla weryfikatora CTS.

    adb shell am compat enable ALLOW_TEST_API_ACCESS com.android.cts.verifier
    
  7. W przypadku Androida 14 i nowszych uruchom to polecenie, aby przyznać aplikacji uprawnienia do włączania ekranu.

    adb shell appops set com.android.cts.verifier TURN_SCREEN_ON 0
    
  8. Upewnij się, że data i godzina w badanym urządzeniu są prawidłowo ustawione.

Uruchamianie narzędzia CTS Verifier

Uruchom aplikację CTS Verifier, klikając jej ikonę na urządzeniu testowym.

Ikona weryfikatora CTS w programie uruchamiającym

Rysunek 1. Ikona weryfikatora CTS

Aplikacja wyświetla kilka zestawów testów do ręcznej weryfikacji.

Menu testów w CTS Verifier

Rysunek 2. Menu testów w CTS Verifier

Każdy test zawiera na dole ekranu zestaw wspólnych elementów.

Weryfikator jakości strumieniowego przesyłania filmów

Rysunek 3. Ekran testowy z wyróżnionymi typowymi elementami testowymi

  • Przeszedł test (✓). Kliknij, jeśli urządzenie DUT spełnia wymagania testowe zgodnie z instrukcjami.
  • Informacje (?). Kliknij, aby wyświetlić instrukcje dotyczące testu. Pojawia się też automatycznie przy pierwszym otwarciu testu.
  • Niepowodzenie (!). Kliknij, jeśli urządzenie testowe nie spełnia wymagań testu zgodnie z instrukcjami.

Niektóre testy, takie jak test trybu akcesoriów USB i test kalibracji aparatu, wymagają dodatkowej konfiguracji i instrukcji, które znajdziesz w następnych sekcjach.

Testowanie trybu akcesorium USB w Androidzie 8.0 i nowszych

Test akcesoriów USB w CTS Verifier

Rysunek 4. Procedura testowania akcesoriów USB w wersji 8.0 i wyższych

Test akcesoriów USB w CTS Verifier

Rysunek 5. Testowanie trybu akcesorium USB w Androidzie 8.0 i nowszych

Testowanie trybu akcesoriów USB w Androidzie 7.x i starszych

Test akcesoriów USB wymaga komputera z systemem Linux, na którym działa program USB Desktop Machine (host).

  1. Podłącz urządzenie do testów do komputera z Linuxem.
  2. Na komputerze uruchom program cts-usb-accessory z pakietu Verifier:

    ./cts-usb-accessory
  3. Zaczekaj, aż na urządzeniu testowym pojawi się wyskakujące okienko, a potem kliknij OK.
    Test akcesoriów USB w CTS Verifier

    Rysunek 6. Test akcesorium USB

  4. Przejdź do testu akcesoriów USB w aplikacji CTS Verifier na urządzeniu DUT.

  5. Na komputerze sprawdź dane wyjściowe konsoli. Przykładowe dane wyjściowe:

    CTS USB Accessory Tester
    Found possible Android device (413c:2106) - attempting to switch to accessory
    mode...
    Failed to read protocol versionfigure3
    Found Android device in accessory mode (18d1:2d01)...
    [RECV] Message from Android device #0
    [SENT] Message from Android accessory #0
    [RECV] Message from Android device #1
    [SENT] Message from Android accessory #1
    [RECV] Message from Android device #2
    [SENT] Message from Android accessory #2
    [RECV] Message from Android device #3
    [SENT] Message from Android accessory #3
    [RECV] Message from Android device #4
    [SENT] Message from Android accessory #4
    [RECV] Message from Android device #5
    [SENT] Message from Android accessory #5
    [RECV] Message from Android device #6
    [SENT] Message from Android accessory #6
    [RECV] Message from Android device #7
    [SENT] Message from Android accessory #7
    [RECV] Message from Android device #8
    [SENT] Message from Android accessory #8
    [RECV] Message from Android device #9
    [SENT] Message from Android accessory #9
    [RECV] Message from Android device #10
    [SENT] Message from Android accessory #10
    

Kalibrowanie pola widzenia kamery

Za pomocą procedury kalibracji pola widzenia możesz szybko określić pole widzenia urządzenia z dostateczną dokładnością.

  1. Skonfiguruj środowisko testowe:

    1. Wydrukuj plik docelowy calibration-pattern.pdf na papierze w formacie A3 lub A4.
    2. Przymocuj wydrukowany wzór do sztywnej podkładki.
    3. Umieść kamerę i wydrukowany cel tak, jak pokazano na diagramie.
      Cel wydruku w aparacie

      Rysunek 7. Cel wydruku w aparacie

  2. Ustaw docelową szerokość:

    1. Zmierz odległość (w centymetrach) między ciągłymi liniami na wzorze docelowym, aby uwzględnić niedokładności druku (~38 cm).
    2. Uruchom aplikację do kalibracji.
    3. Naciśnij przycisk konfiguracji i wybierz Odległość znacznika.
    4. Zmierz i wpisz odległość do wzoru docelowego (około 100 cm).
    5. Aby wrócić do podglądu kalibracji, naciśnij przycisk Wstecz.
  3. Sprawdź, czy urządzenie i cel są umieszczone zgodnie z ilustracją, a w oknie konfiguracji zostały podane prawidłowe odległości. Podgląd wyświetla obraz z nałożoną na niego pionową linią. Linia ta powinna być wyrównana z środkową linią wzoru docelowego. Przezroczysta siatka może być używana z innymi liniami pionowymi, aby zapewnić, że oś optyczna jest prostopadła do celu.

  4. Przeprowadź test kalibracji:

    1. Wybierz rozdzielczość obrazu (za pomocą selektora w lewym dolnym rogu), a potem dotknij ekranu, aby zrobić zdjęcie. Test przechodzi w tryb kalibracji i wyświetla zdjęcie z 2 przesłanymi pionowymi liniami.
    2. Określ dokładność:
      • Jeśli linie pokrywają się z pionowymi liniami w wzorze docelowym w zakresie kilku centymetrów, zgłoszone pole widzenia dla wybranej rozdzielczości jest prawidłowe.
      • Jeśli linie nie są wyrównane, raportowany kąt widzenia jest niedokładny. Aby to naprawić, przesuń suwak na dole ekranu, aż nakładka będzie jak najbardziej dopasowana do docelowego wzoru. Gdy nakładka i obraz wzorcowego wzorca są wyrównane, wyświetlane pole widzenia jest zbliżone do prawidłowej wartości. Raportowany kąt widzenia powinien mieścić się w zakresie +/-2 stopnie wartości kalibracji.
    3. Naciśnij przycisk Wstecz i powtórz test kalibracji dla wszystkich rozdzielczości obrazu obsługiwanych przez urządzenie DUT.

Uruchamianie narzędzia CTS Verifier w trybie alternatywnym

Począwszy od wersji CTS 10 R6 i CTS 11 R2 narzędzie CTS Verifier obsługuje testy wymagane w przypadku urządzeń z trybami alternatywnymi lub urządzeniami z większą liczbą trybów ekranu.

U góry głównego widoku listy w CTS Verifier znajduje się przycisk, który umożliwia użytkownikom przełączanie się między trybem wyświetlania w rozłożonym i złożonym stanie. Narzędzie CTS Verifier wyświetli niezbędne testy dla wybranego trybu wyświetlania. Aby uruchomić alternatywne tryby w CTS Verifier, należy przełączyć przycisk na odpowiedni tryb wyświetlania i uruchomić listę testów.

CTS-V – przełącznik

Rysunek 8. Przełącznik weryfikatora CTS

Wyniki testów złożonych zostaną zarejestrowane w tym samym raporcie co testy nieskładane. Aby można było zidentyfikować poszczególne wyniki testów, z których pochodzi zbiór testów, do nazwy każdego testu w trybie złożonym dodawany jest przyrostek.

<Test result="fail" name="com.android.cts.verifier.deskclock.DeskClockTestsActivity[folded]">
  <RunHistory subtest="CREATE_ALARM[folded]">
    <Run start="1594176663973" end="1594176665841" isAutomated="false" />
  </RunHistory>
</Test>

Eksportowanie wyników

Po zakończeniu wszystkich testów możesz zapisać wyniki w postaci raportu i je pobrać na komputer. Nazwy raportów są automatycznie opatrywane znacznikiem czasu na podstawie czasu systemowego DUT.

  1. Aby zapisać wyniki testu, kliknij ikonę zapisu (dysku) u góry listy kategorii testów.

  2. Poczekaj na wyskakujące okienko z ścieżką do zapisanego raportu (np. /sdcard/verifierReports/ctsVerifierReport-date-time.zip), a potem zapisz ścieżkę.

  3. Podłącz urządzenie do testów do komputera z Linuxem.

  4. Z instalacji pakietu Android SDK na komputerze z systemem Linux pobierz raporty z połączonego urządzenia, używając polecenia adb shell content read lub adb pull CTSVerifierReportPath.

    • W przypadku Androida w wersji 7.x lub nowszej pobierz wszystkie raporty za pomocą tego polecenia:

      adb pull /sdcard/verifierReports
      
    • W przypadku Androida 6.0 lub starszych wersji pobierz wszystkie raporty za pomocą tego polecenia:

      adb pull /mnt/sdcard/ctsVerifierReports/
      
    • W przypadku Androida 10 lub nowszego, w którym korzystasz z Automotive i urządzeń jako użytkownik pomocniczy, pobierz najnowszy raport, wpisując to polecenie:

      adb shell content read --user CURRENT_USER --uri
      
      content://com.android.cts.verifier.testresultsprovider/reports/latest > report.zip
      

      Aby wyświetlić listę wszystkich raportów dostępnych na urządzeniu połączonym z kontem:

      adb shell content query --user CURRENT_USER --uri
      
      content://com.android.cts.verifier.testresultsprovider/reports
      

      Aby pobrać raport z listy, możesz podać identyfikator wiersza lub nazwę pliku. Przykład:

      adb shell content read --user CURRENT_USER --uri
      
      content://com.android.cts.verifier.testresultsprovider/reports/0 > report.zip
      
      adb shell content read --user CURRENT_USER --uri
      
      content://com.android.cts.verifier.testresultsprovider/reports/ctsVerifierReport-date-time.zip >
      report.zip
      
  5. Aby wyczyścić wyniki z oznaczeniem „przeszło” lub „nieprzeszło”, wybierz wyniki w aplikacji CTS Verifier i kliknij Menu > Wyczyść.