À partir d'Android 13, Camera ITS inclut la prise en charge des tests pour les appareils pliables. Les appareils pliables sont équipés de caméras disponibles ou non selon que l'appareil est plié ou déplié.
Les ID de caméras changent en fonction du type, du modèle et de la marque de l'appareil. La disponibilité des caméras frontales physiques change en fonction de l'état. Pour cette raison, Camera ITS détermine de manière dynamique les combinaisons de scènes et de caméras à utiliser pour les tests. Comme les caméras doivent être testées à la fois pliées et dépliées, les tests des appareils pliables nécessitent que l'appareil sous test soit remonté pendant le processus de test.
Test des caméras avant et arrière
Les capteurs de caméras disponibles sur un appareil pliable varient selon que l'appareil est plié ou déplié. Pour les appareils pliables, la disponibilité de la caméra frontale change en fonction de l'état. Par exemple, la caméra avant n'est pas disponible lorsque l'appareil est plié. En raison de ce changement de disponibilité de la caméra avant, les caméras avant doivent être testées à la fois en mode plié et déplié. Camera ITS suppose que la caméra arrière reste disponible de la même manière, que l'appareil soit plié ou déplié. Il n'est donc nécessaire de tester les caméras arrière qu'une seule fois.
En fonction de l'état de l'appareil, Camera ITS filtre les appareils photo indisponibles, qui n'apparaissent pas dans la liste des combinaisons de caméras et de scènes.
Le tableau suivant décrit le comportement des tests ITS de l'appareil photo pour chaque orientation de l'appareil photo.
Orientation de l'appareil photo | Comportement des tests ITS de l'appareil photo |
---|---|
Caméra arrière | Teste la caméra une fois, qu'elle soit pliée ou dépliée. |
Caméra avant principale | Teste la caméra une fois en mode plié et une fois en mode déplié. |
Caméra avant physique | Teste la caméra uniquement dans les états où elle est disponible. |
Procédure de test
Cette section décrit les étapes à suivre pour tester les caméras des appareils pliables.
Configurer un appareil
Pour obtenir des informations sur la configuration, consultez Configuration.
Accorder l'accès à l'API de test
Pour que Camera ITS puisse déterminer si l'appareil est pliable ou non, vous devez accorder l'accès à l'API de test avant d'appeler les tests. Si l'accès n'est pas accordé, l'exécution des tests ITS de la caméra entraîne le plantage de l'application.
Pour accorder l'accès, exécutez la commande ADB suivante. Cette commande doit être exécutée une seule fois pour un appareil. Si CTS Verifier est réinstallé avec une version différente, vous devez exécuter à nouveau la commande.
adb shell am compat enable ALLOW_TEST_API_ACCESS com.android.cts.verifier
Fichier de configuration
Pour spécifier que l'appareil est un appareil pliable, ajoutez le paramètre foldable_device
dans les bancs d'essai tablet
et sensor_fusion
du fichier config.yml
. Camera ITS utilise ce paramètre pour déterminer les combinaisons camera_id
et de scène pour les états plié et déplié.
Voici un exemple de fichier config.yml
pour un appareil pliable.
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
Exécuter des tests
Pour exécuter les tests ITS sur un appareil pliable, exécutez la commande run_all_tests.py
.
Pour en savoir plus, consultez Appeler des tests.
Lorsque vous exécutez Camera ITS sur un appareil pliable, la caméra avant principale est testée dans les deux états, plié et déplié. Si l'appareil est plié, les résultats s'affichent sous l'option camera1_SCENE_NAME_folded
de l'application CTS Verifier. Selon l'état de l'appareil, certains ID de caméra physique avant ne sont pas disponibles et ne sont pas testés.
La caméra arrière ne doit être testée que dans un seul état, de préférence plié. Les résultats de la caméra arrière ne comportent pas le suffixe _folded
.
Pour vous assurer que les scènes pliées sont exécutées avec l'appareil plié et vérifier l'état de l'appareil pliable à tester, exécutez la commande suivante.
adb shell cmd device_state state
Lorsque des tests sont exécutés en mode plié, Camera ITS affiche un message dans le terminal pour inviter l'utilisateur à configurer correctement l'appareil sur le boîtier ITS. Pour continuer à exécuter le test après l'invite, appuyez sur Entrée.
Si vous exécutez toutes les scènes à la fois dans l'état plié et déplié, les scènes pliées sont exécutées en premier, suivies des scènes dépliées. Cela minimise le nombre de remontages requis lors des tests.
Camera ITS ajoute également le suffixe folded
au répertoire tmp
créé pour les scènes en mode plié.
Exemples de commandes
Vous trouverez ci-dessous des exemples de commandes pour l'exécution de tests sur des appareils pliables.
Commande | Description |
---|---|
python tools/run_all_tests.py |
Exécute toutes les scènes. |
python tools/run_all_tests.py scenes=scene0 |
Exécute scene0. Si l'appareil est plié et que l'utilisateur teste la caméra avant principale, le script détermine l'état de l'appareil et ajoute le suffixe _folded au nom de la scène. Les utilisateurs n'ont pas besoin d'ajouter le suffixe pour exécuter les scènes pliées. |
python tests/scene0/ |
Exécute un test spécifique. |