Przeprowadzanie testów CTS-V

Weryfikator zestawu testów zgodności z Androidem (CTS Verifier) uzupełnia zestaw testów zgodności (CTS). CTS sprawdza interfejsy API i funkcje, które można zautomatyzować, a CTS Verifier udostępnia testy 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 aparat.

Wymagania

Zanim uruchomisz CTS Verifier, upewnij się, że masz następujące urządzenia:

  • Urządzenie z Androidem, które przeszło test CTS i zweryfikowało zgodność z interfejsem Android API. Jest to testowane urządzenie (DUT).
  • Komputer z systemem Linux i portem zgodnym z USB 2.0. Wszystkie połączenia z DUT przechodzą przez ten port.
  • Drugie urządzenie z Androidem ze znaną zgodną implementacją Bluetooth, Wi-Fi Direct, Wi-Fi Aware, UWB (jeśli DUT obsługuje UWB) i NFC HCE.
  • Router Wi-Fi skonfigurowany z nazwą punktu dostępu i hasłem. Router powinien mieć możliwość odłączenia się od internetu, ale nie powinien być wyłączony.

Przygotuj też statywy, uchwyty na urządzenia i wcześniej zmierzone odległości wymagane do testów pomiaru odległości (zbliżenia) w przypadku UWB, Wi-Fi NAN i Bluetooth RSSI. Więcej informacji znajdziesz w sekcji Kalibracja obecności.

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

Weryfikator CTS zawiera te przypadki testowe NFC:

  • Field-off (korzysta z danych transakcji z 0x54)
  • Odznacz (używa danych transakcji 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ę SecureElement UICC 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) na potrzeby dostępu do zdarzeń NFC: 0xA000000476416E64726F696443545341

Oczekujemy, że po stronie emulatora zdarzenie transakcji spowoduje przeniesienie odpowiedniej aktywności na pierwszy plan.

Konfiguracja

Zmień tryb nawigacji systemowej na urządzeniu testowym na tryb 3 przycisków w ten sposób:

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

Aby skonfigurować środowisko testowe CTS Verifier:

  1. Na komputerze z systemem Linux:

    • Przed zainstalowaniem weryfikatora CTS uruchom to polecenie, aby zezwolić na 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 DUT do komputera z systemem Linux.

  3. Zainstaluj CtsVerifier.apk na testowanym urządzeniu z terminala na komputerze z systemem Linux.

    adb install -r -g CtsVerifier.apk
    
  4. W przypadku Androida 10 i nowszych 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 przypadku Androida 11 i nowszych uruchom to polecenie, aby umożliwić zapisywanie raportów w zdefiniowanym 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 i nowszych wersji uruchom to polecenie, aby zezwolić na dostęp do interfejsu API testu w aplikacji CTS Verifier.

    adb shell am compat enable ALLOW_TEST_API_ACCESS com.android.cts.verifier
    
  7. W przypadku Androida 14 i nowszych wersji 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 na testowanym urządzeniu prawidłowo ustawiona jest data i godzina systemowa.

Uruchamianie weryfikatora CTS

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

Ikona Weryfikatora CTS w programie uruchamiającym

Rysunek 1. Ikona weryfikatora CTS

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

Menu testów weryfikatora CTS

Rysunek 2. Menu testów weryfikatora CTS

Każdy test zawiera zestaw wspólnych elementów u dołu ekranu.

Weryfikator jakości strumieniowania wideo

Rysunek 3. Ekran testowy z zaznaczonymi typowymi elementami testowymi

  • Zaliczone (✓). Kliknij, jeśli DUT spełnia wymagania testu zgodnie z instrukcjami w sekcji Informacje.
  • Informacje (?). Kliknij, aby wyświetlić instrukcje testu. Pojawia się też automatycznie, gdy test zostanie otwarty po raz pierwszy.
  • Nie (!). Kliknij, jeśli urządzenie nie spełnia wymagań testu zgodnie z instrukcjami w sekcji Informacje.

Niektóre testy, takie jak test trybu akcesoriów USB i test kalibracji aparatu, wymagają dodatkowej konfiguracji i instrukcji, które zostały opisane w kolejnych sekcjach.

Testowanie trybu akcesoriów USB na urządzeniach z Androidem 8.0 i nowszym

Test akcesoriów USB w Weryfikatorze CTS

Rysunek 4. Procedura testowania akcesoriów USB na urządzeniach z Androidem 8.0 i nowszym

Test akcesoriów USB w Weryfikatorze CTS

Rysunek 5. Testowanie trybu akcesoriów USB w przypadku Androida 8.0 i nowszych wersji

Testowanie trybu akcesoriów USB w przypadku Androida 7.x i starszych wersji

Test akcesoriów USB wymaga komputera z systemem Linux, na którym będzie uruchomiony program na komputer stacjonarny USB (host).

  1. Podłącz DUT do komputera z systemem Linux.
  2. Na komputerze uruchom program cts-usb-accessory z pakietu CTS Verifier:

    ./cts-usb-accessory
  3. Poczekaj, aż na urządzeniu pojawi się wyskakujące okienko z komunikatem, a następnie kliknij OK.
    Test akcesoriów USB w Weryfikatorze CTS

    Rysunek 6. Test akcesorium USB

  4. Otwórz test akcesoriów USB w aplikacji CTS Verifier na testowanym urządzeniu.

  5. Sprawdź dane wyjściowe w konsoli na komputerze. 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

Skorzystaj z procedury kalibracji pola widzenia, aby szybko określić pole widzenia urządzenia ze średnią dokładnością.

  1. Skonfiguruj środowisko testowe:

    1. Wydrukuj plik docelowy calibration-pattern.pdf na papierze w rozmiarze 11 x 17 cali lub A3.
    2. Przyklej wydrukowany wzór do sztywnego podłoża.
    3. Ustaw urządzenie z aparatem i wydrukowany wzorzec zgodnie z poniższym diagramem.
      Wydrukowany cel kamery

      Rysunek 7. Wydrukowany cel kamery

  2. Ustaw szerokość docelową:

    1. Zmierz odległość (w centymetrach) między liniami ciągłymi na wzorze docelowym, aby uwzględnić niedokładności druku (ok. 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 (ok. 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 rysunkiem, a w oknie konfiguracji wpisano prawidłowe odległości. W podglądzie obraz jest wyświetlany z nałożoną na niego pionową linią. Powinna ona być wyrównana z linią środkową wzorca docelowego. Przezroczystą siatkę można stosować z innymi liniami pionowymi, aby mieć pewność, że oś optyczna jest prostopadła do celu.

  4. Przeprowadź test kalibracji:

    1. Wybierz rozdzielczość obrazu (za pomocą selektora w lewym dolnym rogu), a następnie kliknij ekran, aby zrobić zdjęcie. Test przechodzi w tryb kalibracji i wyświetla zdjęcie z dwoma pionowymi liniami nałożonymi na obraz.
    2. Określanie dokładności:
      • Jeśli linie pokrywają się z liniami pionowymi na wzorze docelowym w odległości kilku centymetrów, podane pole widzenia dla wybranej rozdzielczości jest prawidłowe.
      • Jeśli linie nie są wyrównane, zgłaszane pole widzenia jest niedokładne. Aby to poprawić, dostosuj suwak u dołu ekranu, aż nakładka będzie jak najbardziej zbliżona do wzorca docelowego. Gdy nakładka i obraz wzorca docelowego są wyrównane, wyświetlane pole widzenia jest zbliżone do prawidłowej wartości. Zgłoszone pole widzenia powinno mieścić się w zakresie +/-2 stopni od wartości kalibracyjnej.
    3. Naciśnij przycisk Wstecz i powtórz test kalibracji dla wszystkich rozdzielczości obrazu obsługiwanych przez testowane urządzenie.

Uruchamianie weryfikatora CTS w trybach alternatywnych

Od wersji CTS 10 R6 i CTS 11 R2 weryfikator CTS obsługuje testy wymagane w przypadku urządzeń z trybami alternatywnymi lub z więcej niż jednym trybem 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 rozłożonego i złożonego wyświetlacza. CTS Verifier wyświetli testy wymagane w przypadku wybranego trybu wyświetlania. Aby uruchomić alternatywne tryby w CTS Verifier, należy przełączyć przycisk na odpowiedni tryb wyświetlania i uruchomić wyświetloną listę testów.

Przełącznik CTS-V

Rysunek 8. Przełącznik Weryfikatora CTS

Wyniki testów złożonych będą rejestrowane w tym samym raporcie co testy niezłożone. Aby odróżnić wyniki testów, z których pochodzi zbiór testowy, do nazwy każdego testu w trybie zwiniętym dodawany jest sufiks.

<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 pobrać je na komputer. Nazwy raportów są automatycznie oznaczane sygnaturą czasową 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ącą wiadomość z ścieżką do zapisanego raportu (np. /sdcard/verifierReports/ctsVerifierReport-date-time.zip), a następnie zapisz tę ścieżkę.

  3. Podłącz DUT do komputera z systemem Linux.

  4. Z instalacji pakietu Android SDK na komputerze z systemem Linux pobierz raporty z podłączonego urządzenia za pomocą polecenia adb shell content read lub adb pull CTSVerifierReportPath.

    • W przypadku Androida 7.x i nowszych pobierz wszystkie raporty za pomocą tego polecenia:

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

      adb pull /mnt/sdcard/ctsVerifierReports/
      
    • W przypadku Androida 10 i nowszych wersji, wdrożenia Automotive i urządzeń działających jako użytkownik dodatkowy pobierz najnowszy raport za pomocą tego polecenia:

      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 połączonym urządzeniu:

      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. Na 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 pozytywne lub negatywne, wybierz je w aplikacji CTS Verifier i kliknij Menu > Wyczyść.