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:
- Abre Configuración.
- Navega a Sistema > Interacción > Modo de navegación.
- 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:
En la computadora con Linux, haz lo siguiente:
- 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 1Instala Android Studio.
Descarga el APK del verificador del CTS para la versión de Android que deseas probar.
Conecta el DUT a la computadora con Linux.
Desde una terminal en la computadora con Linux, instala
CtsVerifier.apken el DUT:adb install -r -g CtsVerifier.apkEn 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 allowEn 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 0En 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.verifierEn 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 0En 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'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.
Figura 1: Ícono del verificador del CTS
La app muestra varios conjuntos de pruebas disponibles para la verificación manual.
Figura 2: Menú de pruebas del verificador del CTS
Cada prueba contiene un conjunto de elementos comunes en la parte inferior de la pantalla.
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
Figura 4: Procedimiento de prueba de accesorio USB para 8.0 y versiones posteriores
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).
- Conecta el DUT a la computadora con Linux.
En la computadora, ejecuta el programa
cts-usb-accessorydesde el paquete del verificador del CTS:./cts-usb-accessoryEspera a que aparezca un diálogo en el DUT y, luego, presiona Aceptar.
Figura 6: Prueba de accesorio USB
Ve a la prueba de accesorio USB en la aplicación del verificador del CTS en el DUT.
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.
Configura el entorno de pruebas:
- Imprime el archivo PDF de destino del patrón de calibración en papel de 11" x 17" o tamaño A3.
- Monta el patrón impreso en un soporte rígido.
Orienta el dispositivo de la cámara y el destino impreso como se muestra en el siguiente diagrama:
Figura 7: Destino impreso de la cámara
Establece el ancho de destino:
- 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).
- Inicia la aplicación de calibración.
- Presiona el botón de configuración y selecciona Marker distance.
- Mide e ingresa la distancia al patrón de destino (~100 cm).
- Presiona el botón Atrás para volver a la vista previa de calibración.
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.
Ejecuta la prueba de calibración:
- 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.
- Determina la exactitud:
- 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.
- 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.
- 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.
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.
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.
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.Conecta el DUT a la computadora con Linux.
Desde la instalación del SDK de Android en la computadora con Linux, descarga informes del dispositivo conectado con
adb shell content readoadb pull CTSVerifierReportPath.En el caso de Android 7.x y versiones posteriores, descarga todos los informes con el siguiente comando:
adb pull /sdcard/verifierReportsEn 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.zipPara 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 ```
Para borrar los resultados de aprobado o reprobado, selecciona los resultados en la app del verificador del CTS y selecciona Menú > Borrar.