Cómo configurar las pruebas automatizadas de CTS

Antes de ejecutar pruebas de CTS automatizadas, prepara tu entorno físico, configura tu estación de trabajo y configura el dispositivo que estás probando.

Configura el entorno físico

Algunas pruebas de CTS requieren el uso de dispositivos externos que se deben configurar cerca del DUT. Para configurar tu entorno físico, haz lo siguiente:

  1. (Opcional) Si el DUT admite Bluetooth LE, coloca al menos tres beacons Bluetooth LE a una distancia de 5 metros del DUT para realizar pruebas de escaneo de Bluetooth LE. Además:

    • No es necesario configurar los píxeles contadores ni emitir nada específico.
    • Los píxeles contadores pueden ser de cualquier tipo, incluidos iBeacon, Eddystone o incluso dispositivos que simulan píxeles contadores BLE.
  2. Coloca el teléfono frente a una escena, como una pared o el techo, a una distancia equivalente a la distancia de enfoque mínima del DUT. Además:

    • La escena debe tener suficiente iluminación para permitir que los sensores en prueba lleguen y permanezcan en los fotogramas por segundo (FPS) objetivo máximos configurados, como se especifica en CONTROL_AE_TARGET_FPS_RANGE.
    • Esta configuración se aplica a todos los sensores de cámara que informa getCameraIdList, ya que la prueba itera en los dispositivos enumerados y mide el rendimiento de forma individual.
    • Si el DUT admite cámaras externas, como cámaras web USB, conecta una cámara externa cuando ejecutes CTS. De lo contrario, las pruebas de CTS fallarán.
  3. (Opcional) Si el DUT admite un sistema de posicionamiento global (GPS) o algún otro sistema global de navegación satelital (GNSS), proporciona una señal de GNSS al DUT a un nivel de señal adecuado para la recepción y el cálculo de la ubicación. Además:

    • El GPS debe cumplir con el ICD-GPS-200C.
    • La señal del GNSS puede ser de cualquier tipo, incluido un simulador de satélite o un repetidor de señales al aire libre.
    • Puedes colocar el DUT cerca de una ventana para que pueda recibir directamente suficiente señal de GNSS de un satélite.
  4. Asegúrate de que tu red Wi-Fi admita IPv4 e IPv6, tenga una conexión a Internet con DNS para IPv4 e IPv6, admita la multidifusión IP y pueda tratar al DUT como un cliente aislado.

    Si no tienes acceso a una red IPv6 nativa, a una red de operador IPv6 ni a una VPN para aprobar las pruebas de IPv6, usa un AP Wi-Fi y un túnel IPv6.

  5. Asegúrate de que el DUT tenga las marcas UP, BROADCAST y MULTICAST configuradas en la interfaz Wi-Fi.

  6. Asegúrate de que la interfaz Wi-Fi tenga asignadas direcciones IPv4 e IPv6. Para verificar las propiedades de la interfaz Wi-Fi, ejecuta adb shell ifconfig.

  7. Si el DUT admite simultaneidad de STA o STA de Wi-Fi, configura al menos dos redes Wi-Fi (opcional). Estas redes Wi-Fi deben ejecutarse en diferentes bandas con diferentes SSID o en el mismo SSID con diferentes BSSID.

  8. (Opcional) Si el DUT admite el tiempo de ida y vuelta (RTT) de Wi-Fi, configura un dispositivo que admita Wi-Fi RTT:

    1. Coloca el dispositivo de RTT Wi-Fi a una distancia de 12 metros (40 pies) del DUT.
    2. Enciende el dispositivo Wi-Fi RTT.

    Estos son dos dispositivos recomendados que admiten el RTT de Wi-Fi: - Google Wifi - Punto de acceso fitlet2 de Compulab (configurado en una banda ancha de 40 MHz a 5 GHz)

Configura tu computadora de escritorio

Antes de ejecutar las pruebas automatizadas de CTS, asegúrate de que tu computadora de escritorio cumpla con los requisitos de hardware y sistema operativo, y de que tenga instalado el software adecuado, como se describe en las siguientes secciones.

Cumple con los requisitos de hardware

La máquina de escritorio de CTS debe cumplir o superar estos requisitos de hardware:

  • Un sistema x86 de 64 bits

  • Al menos 256 GB de espacio libre en disco para admitir la mayor cantidad de casos de prueba de CTS y un aumento en la reserva de espacio de montón de Java en Tradefed

  • Al menos 32 GB de RAM

Cumple con los requisitos del sistema operativo

Tu máquina de desarrollo debe ejecutar una distribución de Linux de 64 bits con la biblioteca GNU C (glibc) 2.17 o una versión posterior.

Instala software para computadoras

Para instalar el software de escritorio adecuado para CTS, sigue estos pasos:

  1. Instala la versión 5.1.3 o una posterior del paquete FFmpeg.

  2. Instala las versiones más recientes de Android Debug Bridge (adb) y Android Asset Packaging Tool (AAPT2), y agrega la ubicación de esas herramientas a la ruta de acceso del sistema de tu máquina:

    1. Sigue las instrucciones que se indican al comienzo de la documentación del Administrador de SDKs para instalar la herramienta de línea de comandos de sdkmanager. El vínculo para descargar las herramientas de línea de comandos se encuentra en la sección Solo herramientas de línea de comandos, en la parte inferior de la página de descarga de Android Studio.
    2. Actualiza la ruta de acceso del sistema para incluir la ubicación del sdkmanager instalado recientemente.
    3. Con sdkmanager, instala los paquetes platform-tools y build-tools más recientes. Estos paquetes contienen adb y AAPT2. Para obtener información sobre cómo instalar paquetes, consulta Cómo instalar paquetes.
    4. Actualiza la ruta para incluir la ubicación de las herramientas adb y AAPT2 que se instalaron recientemente.
    5. Verifica que adb y AAPT2 estén en tu ruta de acceso.
  3. Instala la versión correcta del kit de desarrollo de Java (JDK):

  4. (Opcional) En Android 13 y versiones posteriores, instala virtualenv. La herramienta virtualenv es obligatoria para las pruebas multidispositivo.

  5. Para asegurarte de que Python esté instalado, escribe python3. Debería aparecer la versión y la fecha de Python, lo que indica que está instalado correctamente.

  6. Descarga y abre los paquetes de CTS de las descargas del Conjunto de pruebas de compatibilidad que coincidan con la versión de Android de tus dispositivos y todas las interfaces binarias de aplicaciones (ABI) que admiten tus dispositivos.

  7. Descarga y abre la versión más reciente de los archivos multimedia de CTS. Los archivos multimedia incluyen clips de video de Big Buck Bunny, que son propiedad de la Blender Foundation bajo la licencia Creative Commons Atribución 3.0.

  8. (Opcional) Cuando ejecutas CTS por primera vez, se descargan de forma dinámica algunos archivos CTS relacionados con Mainline. Según la velocidad de tu red, esta descarga agrega 10 minutos o más al tiempo de ejecución de CTS.

    Para evitar este tiempo de ejecución adicional de CTS, puedes descargar los archivos de CTS relacionados con Mainline antes de ejecutar CTS. Para obtener información sobre cómo descargar los archivos de CTS relacionados con Mainline, consulta Cómo descargar archivos de CTS relacionados con Mainline.

Prepara el DUT

Después de configurar la computadora de escritorio, debes configurar el DUT.

Configura el DUT

Para configurar el DUT, haz lo siguiente:

  1. Asegúrate de que el DUT ejecute una imagen del sistema basada en la compilación del usuario que se sabe que es compatible (Android 4.0 o versiones posteriores) de Nombres internos, etiquetas y números de compilación y que use la variante de compilación user. Para obtener más información sobre las variantes de compilación, consulta Cómo elegir un destino.

  2. Si el DUT ejecuta Android 13 o una versión posterior, asegúrate de que la compilación tenga ro.product.first_api_level configurado en el nivel de API con el que se lanzó comercialmente el dispositivo. Para establecer este valor, realiza el siguiente cambio en el archivo device.mk:

    PRODUCT_SHIPPING_API_LEVEL := 21
    

    Ciertos requisitos del CTS dependen de la compilación con la que se envió un dispositivo originalmente. Por ejemplo, es posible que los dispositivos que se envían originalmente con compilaciones anteriores se excluyan de los requisitos del sistema que se aplican a los dispositivos que se envían con compilaciones posteriores. Para obtener valores de nivel de API válidos, consulta Nombres internos, etiquetas y números de compilación. Para obtener más información sobre ro.product.first_api_level, consulta Nivel de API del proveedor.

    Para Android 10 o versiones anteriores, consulta Cómo configurar CTS (AOSP 10 o versiones anteriores).

  3. Si tu dispositivo admite la administración de paquetes APEX, haz lo siguiente:

    1. Descarga el paquete de compensación de APEX para tu versión específica de Android y la arquitectura de hardware. Las dos columnas de la izquierda de la tabla de paquetes de compensación proporcionan vínculos al paquete para descargarlo.
    2. Copia el paquete descargado en /system/apex.
    3. Cambia el nombre del archivo por com.android.apex.cts.shim.apex.
  4. Si tu dispositivo no admite la administración de paquetes APEX, haz lo siguiente:

    1. Descarga los paquetes de compensación de APEX para tu versión específica de Android y la arquitectura de hardware. Las dos columnas de la derecha de la tabla de paquetes de shim proporcionan vínculos a los paquetes que se deben descargar.
    2. Copia el CtsShim.apk en /system/app/.
    3. Se cambió el nombre de CtsShim.apk a CtsShimPrebuilt.apk.
    4. Copia el CtsShimPriv.apk en /system/priv-app/.
    5. Se cambió el nombre de CtsShimPriv.apk a CtsShimPrivPrebuilt.apk.
  5. Si el dispositivo informa más de un elemento seguro, haz lo siguiente:

    1. Descarga google-cardlet.cap.
    2. Copia el archivo descargado en /data/uicc/cardlets/.
  6. Si el dispositivo informa más de un elemento seguro, instala la applet de muestra en el elemento seguro incorporado (eSE) del DUT o en la tarjeta SIM que usa el DUT. Para obtener más información, consulta la prueba de CTS para el elemento seguro.

  7. Si tu dispositivo no tiene una pantalla incorporada, conéctale una.

  8. Si el dispositivo tiene una ranura para tarjeta de memoria, conecta una tarjeta SD vacía. Usa una tarjeta SD que admita un bus de ultra alta velocidad (UHS) con capacidad SDHC o SDXC, o una tarjeta con clase de velocidad 10 o superior para asegurarte de que pueda pasar la CTS.

  9. Si el dispositivo tiene ranuras para tarjetas SIM, inserta una tarjeta SIM activa en cada una. Si el dispositivo admite SMS, cada tarjeta SIM debe tener su propio campo de número propagado. En el caso de los dispositivos que ejecutan Android 12 o versiones posteriores, todas las tarjetas SIM deben ser compatibles con el almacenamiento de números de marcación abreviados (ADN). Las tarjetas GSM y USIM con el archivo dedicado de telecomunicaciones (DFTelecom) cumplen con este requisito.

  10. Asegúrate de que tu dispositivo tenga una SIM con privilegios de operador de CTS que cumplan con los requisitos especificados en Cómo preparar la UICC.

Configura el DUT

Sigue estos pasos para configurar el DUT para usarlo con CTS.

En el DUT:

  1. Restablece la configuración de fábrica del dispositivo.

  2. Establece el idioma del dispositivo en Inglés (Estados Unidos).

  3. Si el dispositivo admite la personalización de fuentes predeterminadas, asegúrate de que la familia de fuentes sans-serif predeterminada esté configurada en Roboto.

  4. Si el dispositivo tiene una función de GPS, Wi-Fi o red móvil, habilita la configuración de ubicación.

  5. Conéctate a una red Wi-Fi que admita IPv6, que pueda tratar al DUT como un cliente aislado y que tenga conexión a Internet. Para obtener una explicación de los clientes aislados, consulta Configura el entorno físico.

  6. Asegúrate de que no haya un patrón de bloqueo ni una contraseña configurados.

  7. Habilita la depuración por USB:

    1. Navega a Configuración > Acerca del teléfono y presiona Número de compilación siete veces. La opción Opciones para desarrolladores aparece en la categoría de configuración Sistema.

    2. Presiona Depuración por USB.

    Para habilitar la depuración USB en Android 10 o versiones anteriores, consulta Cómo configurar CTS (AOSP 10 o versiones anteriores).

  8. Establece la hora en formato de 12 horas.

  9. Habilita Opciones para desarrolladores > Mantener la pantalla activa.

  10. Inhabilita la verificación de apps por USB:

    1. Navega a Opciones para desarrolladores.

    2. Presiona Verificar aplicaciones por USB.

  11. En Android 13 o versiones posteriores, habilita el módem simulado:

    1. Navega a Opciones para desarrolladores.

    2. Presiona Permitir el módem de prueba.

    Este parámetro de configuración es obligatorio para pruebas de telefonía específicas.

En la máquina de escritorio, haz lo siguiente:

  1. Inicia el navegador y descarta cualquier pantalla de inicio o configuración.

  2. Conecta el DUT a la máquina de escritorio con un cable USB.

  3. Si el sistema te solicita que aceptes una clave RSA para permitir la depuración a través de esta computadora, haz clic en Permitir depuración por USB.

  4. Establece Roboto2 como la fuente Sans Serif con un parámetro de configuración accesible para el usuario (no oculto).

  5. Copia los archivos multimedia de CTS en el DUT:

    1. Navega (cd) a la ruta de acceso en la que se descargan y descomprimen los archivos multimedia.
    2. Cambia los permisos de archivo:

      chmod u+x copy_media.sh
      
    3. Copia los archivos:

      • Para copiar clips con una resolución de hasta 720 × 480, ejecuta lo siguiente:

        ./copy_media.sh 720x480
      • Si no estás seguro de la resolución máxima, copia todos los archivos:

        ./copy_media.sh all
      • Si hay varios DUT, agrega la opción de serie (-s) de un dispositivo específico al final. Por ejemplo, para copiar hasta 720 x 480 en el dispositivo con el número de serie 1234567, ejecuta lo siguiente:

        ./copy_media.sh 720x480 -s 1234567

Descarga archivos de CTS relacionados con Mainline

Para descargar los archivos CTS relacionados con Mainline, haz lo siguiente:

  1. Ejecuta el siguiente comando para obtener el nivel de API de Android en el dispositivo:

    adb shell getprop ro.build.version.sdk
    
  2. Sigue las instrucciones de la secuencia de comandos download_mcts.sh para descargar los archivos CTS de Mainline.

    La descarga tarda al menos 10 minutos, según la velocidad de tu red.

Paquetes de shim

En la siguiente tabla, se enumeran los paquetes disponibles para cada versión y arquitectura del dispositivo:

Próximos pasos

Después de leer este documento, continúa con Ejecuta pruebas CTS automatizadas.