Ejecuta pruebas de CTS-V

El verificador del Conjunto de pruebas de compatibilidad (verificador del CTS) de Android complementa el Conjunto de pruebas de compatibilidad (CTS). Si bien el CTS verifica las APIs y las funciones que se pueden automatizar, el verificador del CTS proporciona pruebas para las APIs y las funciones que no se pueden probar en un dispositivo fijo sin entrada o posicionamiento manual, como la calidad de audio, la pantalla táctil, el acelerómetro y la cámara.

Requisitos

Antes de ejecutar el verificador del CTS, asegúrate de tener el siguiente equipo:

  • Un dispositivo con Android que haya pasado el CTS y, por lo tanto, tenga compatibilidad verificada con la API de Android. Este es el dispositivo bajo prueba (DUT).
  • Una computadora con Linux con un puerto compatible con USB 2.0. Todas las conexiones al DUT pasan por este puerto.
  • Un segundo dispositivo con Android con una implementación conocida y compatible de Bluetooth, Wi-Fi Direct, Wi-Fi Aware, UWB (si el DUT admite UWB) y emulación de tarjeta de host (HCE) de NFC.
  • Un router Wi-Fi configurado con el nombre y la contraseña del punto de acceso. El router debe tener la capacidad de desconectarse de Internet sin apagarse.

Asegúrate de preparar los trípodes, los soportes para dispositivos y las distancias medidas previamente que se requieren para las pruebas de medición de distancia (proximidad) para UWB, Wi-Fi NAN y RSSI de Bluetooth. Para obtener más detalles, consulta Calibración de presencias.

Requisitos de UICC para pruebas de NFC

El verificador del CTS tiene los siguientes casos de prueba de NFC:

  • Field-off (usa datos de transacción de 0x54)
  • De-select (usa datos de transacción de 0x52)
  • HCI command (0025000000) (usa datos de transacción de 0x02)

Las pruebas de eventos de transacción requieren dos dispositivos, uno de los cuales debe tener SecureElement UICC con las siguientes reglas de acceso:

  • Hash de APK de CtsVerifier: 61:ED:37:7E:85:D3:86:A8:DF:EE:6B:86:4B:D8:5B:0B:FA:A5:AF:81
  • Identificador de aplicación (AID) autorizado para el acceso a eventos de NFC: 0xA000000476416E64726F696443545341

En el emulador, esperamos que el evento de transacción envíe la actividad correspondiente al primer plano.

Configuración

Android 17 requiere un paso de configuración adicional del CTS-V para otorgar el rol de navegador predeterminado.

Cambia el modo de navegación del sistema del dispositivo de prueba al modo de tres botones de la siguiente manera:

  1. Abre Configuración.
  2. Navega a Sistema > Interacción > Modo de navegación.
  3. Selecciona cualquier modo de navegación basado en botones; se prefiere el modo de tres botones, si está disponible.

Para configurar el entorno de pruebas del verificador del CTS, haz lo siguiente:

  1. En la computadora con Linux, haz lo siguiente:

    1. Antes de instalar el verificador del CTS, ejecuta el siguiente comando para permitir el acceso a interfaces que no son del SDK:
    adb shell settings put global hidden_api_policy 1
    
    1. Instala Android Studio.

    2. Descarga el APK del verificador del CTS para la versión de Android que deseas probar.

  2. Conecta el DUT a la computadora con Linux.

  3. Desde una terminal en la computadora con Linux, instala CtsVerifier.apk en el DUT:

    adb install -r -g CtsVerifier.apk
    
  4. En el caso de Android 10 y versiones posteriores, ejecuta el siguiente comando para otorgar permiso a la app para crear el informe:

    adb shell appops set com.android.cts.verifier android:read_device_identifiers allow
    
  5. En el caso de Android 11 y versiones posteriores, ejecuta el siguiente comando para permitir que los informes se guarden en un directorio autodefinido en el directorio externo de nivel superior del dispositivo:

    adb shell appops set com.android.cts.verifier MANAGE_EXTERNAL_STORAGE 0
    
  6. En el caso de Android 13 y versiones posteriores, ejecuta el siguiente comando para permitir el acceso a la API de prueba para el verificador del CTS:

    adb shell am compat enable ALLOW_TEST_API_ACCESS com.android.cts.verifier
    
  7. En el caso de Android 14 y versiones posteriores, ejecuta el siguiente comando para otorgar permiso a la app para encender la pantalla:

    adb shell appops set com.android.cts.verifier TURN_SCREEN_ON 0
    
  8. En el caso de Android 17 y versiones posteriores, ejecuta el siguiente comando para otorgar el rol de navegador predeterminado al verificador del CTS:

    adb shell 'cmd role add-role-holder --user $(am get-current-user) android.app.role.BROWSER com.android.cts.verifier'
    
  9. Verifica que el DUT tenga la fecha y la hora del sistema configuradas correctamente.

Ejecuta el verificador del CTS

Para iniciar la app del verificador del CTS, presiona el ícono del verificador del CTS en el DUT.

Ícono del verificador del CTS en el selector

Figura 1: Ícono del verificador del CTS

La app muestra varios conjuntos de pruebas disponibles para la verificación manual.

Menú de pruebas del verificador del CTS

Figura 2: Menú de pruebas del verificador del CTS

Cada prueba contiene un conjunto de elementos comunes en la parte inferior de la pantalla.

Verificador de la calidad de transmisión de video

Figura 3: Pantalla de prueba con elementos de prueba comunes destacados

  • Pass (✓): Presiona si el DUT cumple con los requisitos de la prueba según las instrucciones de Info.
  • Info (?): Presiona para mostrar las instrucciones de la prueba. También aparece automáticamente la primera vez que se abre una prueba.
  • Fail (!): Presiona si el DUT no cumple con los requisitos de la prueba según las instrucciones de Info.

Algunas pruebas, como el modo de accesorio USB y la prueba de calibración de la cámara, requieren instrucciones y configuración de prueba adicionales, como se detalla en las siguientes secciones.

Prueba el modo de accesorio USB para 8.0 y versiones posteriores

Prueba de accesorio USB del verificador del CTS

Figura 4: Procedimiento de prueba de accesorio USB para 8.0 y versiones posteriores

Prueba de accesorio USB del verificador del CTS

Figura 5: Prueba del modo de accesorio USB para 8.0 y versiones posteriores

Prueba el modo de accesorio USB para 7.x y versiones anteriores

La prueba de accesorio USB requiere una computadora con Linux para ejecutar el programa de la máquina de escritorio USB (host).

  1. Conecta el DUT a la computadora con Linux.
  2. En la computadora, ejecuta el programa cts-usb-accessory desde el paquete del verificador del CTS:

    ./cts-usb-accessory
    
  3. Espera a que aparezca un diálogo en el DUT y, luego, presiona Aceptar.

    Prueba de accesorio USB del verificador del CTS

    Figura 6: Prueba de accesorio USB

  4. Ve a la prueba de accesorio USB en la aplicación del verificador del CTS en el DUT.

  5. En la computadora, revisa el resultado de la consola. Resultado de ejemplo:

    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
    

Calibra el campo visual de la cámara

Usa el procedimiento de calibración del campo de visión para determinar rápidamente el campo de visión del dispositivo con una precisión moderada.

  1. Configura el entorno de pruebas:

    1. Imprime el archivo PDF de destino del patrón de calibración en papel de 11" x 17" o tamaño A3.
    2. Monta el patrón impreso en un soporte rígido.
    3. Orienta el dispositivo de la cámara y el destino impreso como se muestra en el siguiente diagrama:

      Objetivo de la cámara impreso

      Figura 7: Destino impreso de la cámara

  2. Establece el ancho de destino:

    1. Mide la distancia (en centímetros) entre las líneas continuas del patrón de destino para tener en cuenta las imprecisiones de impresión (~38 cm).
    2. Inicia la aplicación de calibración.
    3. Presiona el botón de configuración y selecciona Marker distance.
    4. Mide e ingresa la distancia al patrón de destino (~100 cm).
    5. Presiona el botón Atrás para volver a la vista previa de calibración.
  3. Verifica que el dispositivo y el destino estén colocados como se muestra en la figura y que se hayan ingresado las distancias correctas en el diálogo de configuración. En la vista previa, se muestra la imagen con una línea vertical superpuesta; esta línea debe alinearse con la línea central del patrón de destino. La cuadrícula transparente se puede usar con las otras líneas verticales para verificar que el eje óptico sea ortogonal al destino.

  4. Ejecuta la prueba de calibración:

    1. Selecciona una resolución de imagen (con el selector en la esquina inferior izquierda) y, luego, presiona la pantalla para tomar una foto. La prueba ingresa al modo de calibración y muestra la foto con dos líneas verticales superpuestas en la imagen.
    2. Determina la exactitud:
    3. Si las líneas se alinean con las líneas verticales del patrón de destino dentro de unos centímetros, el campo visual informado para la resolución seleccionada es exacto.
    4. Si las líneas no se alinean, el campo visual informado es inexacto. Para corregir esto, ajusta el control deslizante en la parte inferior de la pantalla hasta que la superposición se alinee con el patrón de destino lo más cerca posible. Cuando la superposición y la imagen del patrón de destino estén alineadas, el campo de visión mostrado será una aproximación cercana al valor correcto. El campo de visión informado debe estar dentro de los 3 grados del valor de calibración.
    5. Presiona el botón Atrás y repite la prueba de calibración para todas las resoluciones de imagen compatibles con el DUT.

Ejecuta el verificador del CTS para modos alternativos

A partir de las versiones CTS 10 R6 y CTS 11 R2, el verificador del CTS admite las pruebas necesarias para dispositivos con modos alternativos o para dispositivos con más de un modo de pantalla.

En la parte superior de la vista de lista principal del verificador del CTS, se muestra un botón para permitir que los usuarios alternen entre el modo de pantalla plegado y desplegado. El verificador del CTS mostrará las pruebas necesarias para el modo de pantalla seleccionado. Para ejecutar los modos alternativos en el verificador del CTS, se debe cambiar el botón al modo de pantalla adecuado y ejecutar la lista de pruebas que se muestra.

Interruptor de CTS-V

Figura 8: Interruptor de alternancia del verificador del CTS

Los resultados de las pruebas plegadas se registrarán en el mismo informe que las pruebas desplegadas. Para identificar cada resultado de prueba del que proviene el conjunto de pruebas, se agrega un sufijo a cada nombre de prueba en el modo plegado.

<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>

Exportar resultados

Una vez que se completen todas las pruebas, puedes guardar los resultados como un informe y descargarlos en una computadora. Los nombres de los informes se marcan automáticamente con la hora según la hora del sistema del DUT.

  1. Para guardar los resultados de la prueba, presiona el ícono de guardar (disco) en la parte superior de la lista de categorías de prueba.

  2. Espera un diálogo que muestre la ruta de acceso al informe guardado (por ejemplo, /sdcard/verifierReports/ctsVerifierReport-date-time.zip) y, luego, registra la ruta de acceso.

  3. Conecta el DUT a la computadora con Linux.

  4. Desde la instalación del SDK de Android en la computadora con Linux, descarga informes del dispositivo conectado con adb shell content read o adb pull CTSVerifierReportPath.

    • En el caso de Android 7.x y versiones posteriores, descarga todos los informes con el siguiente comando:

      adb pull /sdcard/verifierReports
      
    • En el caso de Android 6.0 y versiones anteriores, descarga todos los informes con el siguiente comando:

      adb pull /mnt/sdcard/ctsVerifierReports/
      
    • En el caso de Android 10 y versiones posteriores, implementa Automotive y los dispositivos que se ejecutan como usuario secundario, descarga el informe más reciente con el siguiente comando:

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

      Para enumerar todos los informes disponibles en el dispositivo conectado, haz lo siguiente:

        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. Para borrar los resultados de aprobado o reprobado, selecciona los resultados en la app del verificador del CTS y selecciona Menú > Borrar.