Testowanie składanych aparatów ITS

Od Androida 13 ITS dla aparatu obejmuje obsługę testów urządzeń składanych. Aparaty w składanych urządzeniach są dostępne lub niedostępne w zależności od tego, czy urządzenie jest złożone czy rozłożone.

Identyfikatory kamer zmieniają się w zależności od typu, modelu i marki urządzenia, a dostępność fizycznych przednich kamer zależy od stanu. Z tego powodu ITS aparatu dynamicznie określa kombinacje scen i kamer do testowania. Kamery muszą być testowane zarówno w stanie złożonym, jak i rozłożonym, dlatego testowanie urządzeń składanych wymaga ponownego zamontowania DUT podczas procesu testowania.

Testowanie przedniego i tylnego aparatu

Czujniki aparatu dostępne na urządzeniu składanym różnią się w zależności od tego, czy urządzenie jest złożone czy rozłożone. W przypadku składanych urządzeń dostępność przedniego aparatu zmienia się w zależności od stanu. Na przykład przedni aparat nie jest dostępny w stanie złożonym. Z powodu tej zmiany w dostępności przednich aparatów przednie aparaty muszą być testowane zarówno w stanie złożonym, jak i rozłożonym. ITS aparatu zakłada, że dostępność tylnego aparatu pozostaje taka sama, niezależnie od tego, czy urządzenie jest złożone, czy rozłożone, więc tylne aparaty należy przetestować tylko raz.

W zależności od stanu urządzenia ITS kamery odfiltrowuje niedostępne urządzenia z kamerą, a urządzenia z kamerą nie będą widoczne na liście kombinacji kamer i ujęć.

W tabeli poniżej opisano zachowanie testu ITS aparatu w przypadku poszczególnych orientacji aparatu.

Orientacja aparatu Zachowanie testu ITS kamery
Tylny aparat Sprawdza aparat raz po złożeniu lub rozłożeniu
Główny przedni aparat Testuje aparat raz w stanie złożonym, a raz w stanie rozłożonym.
Fizyczny przedni aparat Testuje kamerę tylko w stanach, w których jest dostępna.

Procedura testowa

W tej sekcji opisano, jak przetestować aparaty w urządzeniach składanych.

Skonfiguruj urządzenie

Informacje o konfigurowaniu znajdziesz w sekcji Konfiguracja.

Przyznawanie dostępu do testowego interfejsu API

Aby Camera ITS mogła określić, czy urządzenie jest składane, czy nie, przed wywołaniem testów musisz przyznać dostęp do testowego interfejsu API. Jeśli dostęp nie zostanie przyznany, uruchomienie testów ITS aparatu spowoduje zablokowanie aplikacji.

Aby przyznać dostęp, uruchom to polecenie ADB. To polecenie należy wykonać raz na jedno urządzenie. Jeśli weryfikator CTS został ponownie zainstalowany z inną wersją, musisz ponownie uruchomić to polecenie.

adb shell am compat enable ALLOW_TEST_API_ACCESS com.android.cts.verifier

Plik konfiguracji

Aby określić, że urządzenie jest składane, dodaj parametr foldable_device do stanowisk testowych tablet i sensor_fusion w pliku config.yml. System ITS używa tego parametru do określania kombinacji elementów camera_id i scen w stanie złożonym i rozłożonym.

Poniżej znajdziesz przykład pliku config.yml dla urządzenia składanego.

TestBeds:
  - Name: TABLET_SCENES
    # Test configuration for scenes[0:4, 6]
    Controllers:
        AndroidDevice:
          - serial: 8A9X0NS5Z
            label: dut
          - serial: 5B16001229
            label: tablet

    TestParams:
      brightness: 192
      chart_distance: 22.0
      debug_mode: "False"     # "quotes" needed
      chart_loc_arg: ""
      camera: 0
      scene: scene2_a
  lighting_cntl: arduino    # can be "arduino" or "None"
  lighting_ch: 1
  foldable_device: "True"     # "False" for non-foldable DUTs

Przeprowadzanie testów

Aby uruchomić testy ITS na urządzeniu składanym, uruchom polecenie run_all_tests.py. Więcej informacji znajdziesz w artykule Wywoływanie testów.

Podczas uruchamiania ITS aparatu na urządzeniu składanym testowany jest główny przedni aparat w obu stanach – złożonym i rozłożonym. Jeśli urządzenie jest złożone, wyniki są wyświetlane w opcji camera1_SCENE_NAME_folded w aplikacji CTS Verifier. W zależności od stanu urządzenia niektóre identyfikatory przednich fizycznych aparatów są niedostępne i nie są testowane. Tylny aparat musi być testowany tylko w jednym stanie, najlepiej w stanie złożonym. Wyniki dla tylnego aparatu nie mają przyrostu _folded.

Aby mieć pewność, że sceny składania są wykonywane po złożeniu urządzenia, i sprawdzić stan składanego DUT, uruchom to polecenie.

adb shell cmd device_state state

Podczas wykonywania testów w składanym stanie, ITS aparatu wyświetla wiadomość na terminalu, aby poprosić użytkownika o prawidłowe ustawienie urządzenia na pudełku ITS. Aby kontynuować wykonywanie testu po wyświetleniu prompta, naciśnij Enter.

Jeśli uruchamiasz wszystkie sceny w złożonym i rozłożonym stanie, najpierw wykonywane są sceny złożone, a potem rozłożone. Pozwala to zminimalizować ilość ponownego montowania wymaganej podczas testowania.

ITS aparatu dodaje też sufiks folded do katalogu tmp utworzonego dla scen w złożonym stanie.

Przykładowe polecenia

Poniżej znajdziesz przykładowe polecenia do wykonywania testów na składanych urządzeniach.

Polecenie Opis
python tools/run_all_tests.py Uruchamia wszystkie sceny.
python tools/run_all_tests.py scenes=scene0 Uruchamia scenę 0. Jeśli urządzenie jest złożone, a użytkownik testuje główny przedni aparat, skrypt określa stan urządzenia i dodaje sufiks _folded do nazwy sceny. Użytkownicy nie muszą dodawać sufiksu, aby uruchomić złożone sceny.
python tests/scene0/ -c config.yml Uruchamia konkretny test.