Przeprowadzanie testów CTS-V

Weryfikator pakietu testów zgodności Androida (CTS Verifier) uzupełnia pakiet testów zgodności (CTS). CTS sprawdza interfejsy API i funkcje, które można zautomatyzować, a CTS Verifier przeprowadza testy interfejsów API i funkcji, których nie można przetestować na urządzeniu stacjonarnym bez ręcznego wprowadzania danych lub pozycjonowania, np. jakości dźwięku, ekranu dotykowego, akcelerometru i aparatu.

Wymagania

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

  • Urządzenie z Androidem, które przeszło testy CTS i ma potwierdzoną zgodność z interfejsem API Androida. Jest to testowane urządzenie (DUT).
  • Komputer z systemem Linux z portem zgodnym z USB 2.0. Wszystkie połączenia z DUT są nawiązywane przez ten port.
  • Drugie urządzenie z Androidem ze znaną, zgodną implementacją Bluetootha, 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ą punktu dostępu i hasłem. Router powinien mieć możliwość odłączenia się od internetu bez wyłączania zasilania.

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

CTS Verifier 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:

  • Hasz 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 System > Gest > 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:

    1. Przed zainstalowaniem aplikacji CTS Verifier uruchom to polecenie, aby zezwolić na dostęp do interfejsów innych niż SDK.
    adb shell settings put global hidden_api_policy 1
    
    1. Zainstaluj Android Studio.

    2. Pobierz plik APK aplikacji CTS Verifier dla wersji Androida, którą chcesz przetestować.

  2. Podłącz testowane urządzenie do komputera z systemem Linux.

  3. Zainstaluj CtsVerifier.apk na urządzeniu DUT 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 utworzenia 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 zezwolić na zapisywanie raportów w zdefiniowanym przez siebie katalogu w zewnętrznym katalogu najwyższego poziomu na urządzeniu:

    adb shell appops set com.android.cts.verifier MANAGE_EXTERNAL_STORAGE 0
    
  6. W przypadku Androida 13 i nowszych uruchom to polecenie, aby zezwolić na dostęp do testowego interfejsu API przez aplikację CTS Verifier:

    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. Sprawdź, czy na testowanym urządzeniu prawidłowo ustawiona jest data i godzina systemowa.

Uruchamianie weryfikatora CTS

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

Ikona CTS Verifier w programie uruchamiającym

Rysunek 1. Ikona narzędzia CTS Verifier.

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

Menu testów w narzędziu CTS Verifier

Rysunek 2. Menu testów w narzędziu CTS Verifier.

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

Weryfikator jakości strumieniowania wideo

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

  • Zaliczone (✓). Kliknij, jeśli urządzenie 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 DUT 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 lub nowszym

Test akcesoriów USB w narzędziu CTS Verifier

Rysunek 4. Procedura testowania akcesoriów USB w przypadku Androida 8.0 i nowszych wersji.

Test akcesoriów USB w narzędziu CTS Verifier

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

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

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

  1. Podłącz testowane urządzenie 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ę okno dialogowe, a następnie kliknij OK.

    Test akcesoriów USB w narzędziu CTS Verifier

    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 wzoru kalibracyjnego w formacie PDF na papierze o 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 cel zgodnie z tym 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ść od znacznika.
    4. Zmierz i wpisz odległość do wzorca (~100 cm).
    5. Aby wrócić do podglądu kalibracji, naciśnij przycisk Wstecz.
  3. Sprawdź, czy urządzenie i cel są ustawione zgodnie z rysunkiem, a w oknie konfiguracji wpisano prawidłowe odległości. W podglądzie wyświetla się obraz z nałożoną na niego pionową linią. Powinna ona być wyrównana z linią środkową wzoru celu. Przezroczystą siatkę można wykorzystać z innymi liniami pionowymi, aby sprawdzić, czy 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śl dokładność:
    3. 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.
    4. Jeśli linie nie są wyrównane, zgłaszane pole widzenia jest niedokładne. Aby to skorygować, dostosuj suwak u dołu ekranu, aż nakładka będzie jak najbardziej wyrównana z wzorcem docelowym. Gdy nakładka i obraz wzorca docelowego będą wyrównane, wyświetlane pole widzenia będzie zbliżone do prawidłowej wartości. Zgłaszane pole widzenia powinno mieścić się w zakresie 3 stopni od wartości kalibracji.
    5. Naciśnij przycisk Wstecz i powtórz test kalibracji dla wszystkich rozdzielczości obrazu obsługiwanych przez testowane urządzenie.

Uruchamianie narzędzia CTS Verifier 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 urządzeń z więcej niż jednym trybem ekranu.

U góry głównego widoku listy w narzędziu CTS Verifier znajduje się przycisk, który umożliwia użytkownikom przełączanie się między trybem wyświetlania na rozłożonym i złożonym ekranie. Narzędzie CTS Verifier wyświetli testy wymagane w wybranym trybie wyświetlania. Aby uruchomić tryby alternatywne w narzędziu 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 CTS Verifier.

Wyniki złożonych testów będą rejestrowane w tym samym raporcie co wyniki testów niezłożonych. Aby odróżnić wyniki testów, z których pochodzi zbiór testowy, do nazwy każdego testu w trybie złożonym 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>

Eksportuj wyniki

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 (dysk) u góry listy kategorii testów.

  2. Poczekaj na wyświetlenie okna z ścieżką do zapisanego raportu (np. /sdcard/verifierReports/ctsVerifierReport-date-time.zip), a następnie zapisz tę ścieżkę.

  3. Podłącz testowane urządzenie 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, implementacji Automotive i urządzeń działających jako użytkownik dodatkowy pobierz najnowszy raport za pomocą tego polecenia:

      adb shell content read --user <var>CURRENT_USER</var> --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
        ```
      
      To download a report from the list, you can specify the Row ID or
      filename. For example:
      
      ```shell
        adb shell content read --user CURRENT_USER --uri content://com.android.cts.verifier.testresultsprovider/reports/0 > report.zip
        ```
      
      ```shell
        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ść.