OmniLab ATS es una herramienta de prueba que los desarrolladores e ingenieros de pruebas de Android pueden usar para emplear una interfaz de usuario para ejecutar conjuntos de pruebas estándares de Android, como el Conjunto de pruebas de compatibilidad de Android (CTS). Esta herramienta actúa como una interfaz web para varios frameworks de prueba, como la Federación de Comercio (TF) y Google Mobly, lo que te permite ejecutar pruebas de CTS y varios dispositivos en un conjunto de dispositivos de prueba con una configuración mínima, así como establecer un programa para ejecutar pruebas de forma continua.
Configura el ATS de OmniLab
En esta sección, se explica cómo instalar y configurar OmniLab ATS.
OmniLab ATS usa el código fuente de las siguientes ubicaciones:
- Código fuente de OmniLab ATS
- Código fuente del clúster de TradeFed
Instala OmniLab ATS
Sigue los requisitos de hardware y software de los paquetes de pruebas que ejecutes.
Los requisitos de CTS se encuentran en source.android.com.
No hay requisitos de hardware adicionales para la ATS de OmniLab, pero recomendamos usar el requisito de host de CTS como punto de partida.
Existen dos formas de instalar OmniLab ATS:
- Ejecuta el programa de instalación.
- Instálala de forma manual, lo que requiere instalar varios programas y recursos.
Cómo instalar con el programa de instalación
En Ubuntu 20.04 y versiones posteriores, el programa instalador instala y configura todos los programas y recursos necesarios para ejecutar OmniLab ATS.
Para usar el programa de instalación, haz lo siguiente:
Ejecuta el programa de instalación:
curl https://storage.googleapis.com/android-mtt.appspot.com/prod/install.sh | bash
Ejecuta
mtt version
para verificar la versión instalada de la CLI de ATS de OmniLab.
Instalación manual
Instala Docker
Sigue las instrucciones para instalar Docker Community Edition (CE) en tu máquina Linux.
Sigue los pasos posteriores a la instalación para administrar Docker como un usuario no raíz.
Es posible que debas reiniciar la ventana de la terminal o salir y volver a acceder para que se apliquen los cambios de permisos.
Instala Python 3
La CLI de OmniLab ATS se verifica en las versiones de Python 3.7 a 3.11.
Para Ubuntu 16.04 o versiones anteriores, primero agrega el repositorio de Python 3. Para ello, haz lo siguiente:
Ejecuta este comando:
sudo add-apt-repository ppa:deadsnakes/ppa
Compila e instala el repositorio desde la fuente.
Para instalar Python 3, ejecuta estos comandos:
sudo apt-get update
sudo apt install python3 python3-distutils
Para instalar una versión específica de Python 3 (por ejemplo, 3.10), ejecuta estos comandos en su lugar:
sudo apt-get update
sudo apt install python3.10 python3.10-distutils
Obtén la CLI de OmniLab ATS
Descarga el paquete de la interfaz de línea de comandos (CLI) aquí.
Cómo iniciar ATS de OmniLab
Inicia OmniLab ATS con el siguiente comando:
mtt start
La primera vez que se inicie la IU, es posible que tarde unos minutos en aparecer. La CLI muestra una URL web para acceder a la IU en un navegador. De forma predeterminada, la URL web es localhost:8000
. Si es necesario, puedes cambiar el puerto predeterminado al inicio con la marca --port
.
Si hay una versión más reciente disponible, puedes actualizarla a la versión actual. Puedes consultar las notas de la versión para conocer las versiones más recientes.
Para actualizar a la versión actual, ejecuta el siguiente comando:
mtt start --force_update
Para detener la app, ejecuta lo siguiente:
mtt stop
Para ver una lista de otros comandos, usa:
mtt --help
Crea una copia de seguridad de la base de datos y restablécela
Para crear una copia de seguridad de la base de datos de OmniLab ATS, detén la app y ejecuta el siguiente comando, que crea una copia de seguridad de la base de datos actual en un archivo TAR llamado mtt-backup.tar
en tu directorio principal:
docker run --rm --mount source=mtt-data,target=/data -v ~:/out ubuntu bash -c "cd /data && tar cvf /out/mtt-backup.tar ."
Para restablecer, ejecuta el siguiente comando antes de iniciar la app:
docker run --rm --mount source=mtt-data,target=/data -v ~:/out ubuntu bash -c "cd /data && tar xvf /out/mtt-backup.tar"
Asistente de configuración
Después de instalar y ejecutar OmniLab ATS por primera vez, el asistente de configuración te guía a través de algunos pasos para ayudarte a personalizar la herramienta para tu entorno. Los cambios que realices aquí se podrán volver a configurar más adelante en la página Configuración.
Cómo restablecer una copia de seguridad de configuración
Si tienes una copia de seguridad de un archivo de configuración de otro host de OmniLab ATS, puedes subir el archivo para copiar cualquier configuración modificada desde ese host. Para ello, haz clic en el botón Upload File.
Figura 1: Restablecer una copia de seguridad de configuración
Configura la cuenta de servicio predeterminada
Puedes configurar una cuenta de servicio que OmniLab ATS use de forma predeterminada cuando acceda a tus recursos (por ejemplo, Google Cloud Storage o Google Drive). Para autenticar tu cuenta de servicio, haz clic en Subir clave de cuenta de servicio y selecciona el archivo de clave JSON de tu cuenta de servicio.
Figura 2: Configuración de la cuenta de servicio.
Cuando la cuenta de servicio se autentica correctamente, la dirección de correo electrónico de la cuenta aparece en la esquina superior derecha de la página. Para cambiar la cuenta de servicio, haz clic en el nombre de la cuenta, quita la cuenta predeterminada actual y sube una clave de cuenta de servicio nueva.
Figura 3: Cambiar la cuenta de servicio
Importa conjuntos de configuración
Un conjunto de configuración es un paquete de configuraciones para ejecutar paquetes de prueba, incluidas las acciones de dispositivos relacionadas y los canales de compilación. Los conjuntos de configuración se alojan en un bucket específico de Google Cloud Storage (GCS). Después de autenticar el canal de compilación de GCS con tu Cuenta de Google, verás una lista de todos los conjuntos de configuración que tienes disponibles.
Selecciona los conjuntos de configuración que deseas agregar al host de Test Station y haz clic en Import Selected.
Figura 4: Importa un conjunto de configuración.
Incluir la configuración de Wi-Fi
Algunas pruebas de CTS requieren que el dispositivo se conecte a un hotspot de Wi-Fi. Para seleccionar tu red Wi-Fi, ingresa el SSID de Wi-Fi y la PSK de Wi-Fi opcional.
Figura 5: Configuración del hotspot de Wi-Fi
Después de completar el asistente de configuración, la página se vuelve a cargar con la configuración nueva aplicada.
Conectar dispositivo
La depuración por USB debe estar habilitada para usar un dispositivo para pruebas. Para habilitar la depuración, haz lo siguiente:
Sigue las instrucciones que se indican en Habilita las opciones para desarrolladores y la depuración.
Si planeas usar compilaciones de prueba de Android precargadas con claves de ADB personalizadas, coloca los archivos
.adb_key
personalizados en el directorio~/.android/
.Los archivos se cargan automáticamente y se pasan a ADB para habilitar automáticamente la depuración por USB después de que se escribe en la memoria flash de los dispositivos que ejecutan esas compilaciones.
Conecta el dispositivo a la máquina anfitrión mediante USB.
El dispositivo aparecerá en la pestaña Dispositivos de ATS de OmniLab en un plazo de un minuto después de actualizar la interfaz web. También puedes ver el estado de los dispositivos en esta pestaña.
Figura 6: Conectar un dispositivo
Los diferentes estados del dispositivo son los siguientes:
- Disponible: El dispositivo está conectado y listo para ejecutar una prueba.
- Asignado: El dispositivo está conectado y se está ejecutando una prueba. Cada dispositivo puede ejecutar una sola prueba a la vez, por lo que debe terminar la prueba actual antes de ejecutar una nueva.
Cómo ejecutar una prueba
Selecciona una prueba
OmniLab ATS viene con un conjunto de configuraciones de CTS precompiladas. Para ejecutar una de estas pruebas, ve a la pestaña Paquetes de pruebas y haz clic en Ejecutar prueba para la prueba seleccionada.
Figura 7: Selecciona una prueba.
Para editar o agregar pruebas nuevas, consulta Cómo agregar pruebas.
Configura la ejecución de la prueba
Edita los parámetros que se usarán para esta ejecución de prueba específica. La mayoría de los parámetros se prepropagan con los valores definidos en la configuración de prueba seleccionada.
Este paso se puede completar con los valores predeterminados, pero puedes cambiar cualquiera de los parámetros, como Max Retry y Command, para que se adapten a tus necesidades.
Figura 8: Configuración de una ejecución de prueba.
Los parámetros de la ejecución de prueba son los siguientes:
- Nombre: Es el nombre del paquete de pruebas que deseas ejecutar.
- Recuento de ejecuciones: Es la cantidad de veces que se debe ejecutar esta ejecución de prueba cuando se programa. Las ejecuciones de prueba se programan con Trade Federation, que ejecuta hasta 20 ejecuciones de prueba en paralelo si hay capacidad para hacerlo.
- Reintento máximo: La cantidad máxima de veces que se puede reintentar una ejecución de prueba si al menos una prueba falla. Por lo general, se establece entre 4 y 6 reintentos para que una ejecución completa de CTS controle las pruebas inestables.
- Tiempo de espera de la cola: Si una ejecución de prueba permanece en el estado En cola durante demasiado tiempo, se cancela automáticamente. Especifica la cantidad de tiempo que se debe esperar antes de la cancelación aquí. El valor predeterminado es de 24 horas.
Comando: Es el comando para ejecutar el conjunto de pruebas. Puedes ingresar argumentos de línea de comandos adicionales aquí. Por ejemplo, ejecuta un módulo específico en CTS 8.1 con lo siguiente:
cts-suite -m ShortModuleName
Comando Retry: Es el comando para volver a intentar un paquete de pruebas. Puedes agregar argumentos de línea de comandos adicionales aquí. Por ejemplo, para reintentar solo un módulo específico en CTS 8.1, usa lo siguiente:
cts --retry 0 -m ShortModuleName
Los argumentos de reintento pueden diferir de los disponibles con el comando inicial, así que verifica los parámetros compatibles en el sitio oficial para el paquete de pruebas seleccionado.
Prueba anterior: Si quieres volver a ejecutar una prueba anterior, haz lo siguiente:
Local: Si la ejecución se inició en el host actual, ingresa el ID de ejecución de prueba que se muestra cuando visualizas los detalles de la ejecución de prueba.
Figura 9: Ejecución de prueba anterior local.
Remoto: Si la ejecución se inició en otro host, sube el archivo de resultados de la prueba. Para ello, selecciona Remoto, haz clic en Subir archivo de resultados de la prueba y selecciona un archivo de tu almacenamiento local.
Figura 10: Ejecución de prueba anterior remota.
Elegir dispositivos
Haz clic en las casillas de verificación para seleccionar los dispositivos que se asignarán para ejecutar el paquete de pruebas. El recuento de fragmentos debe cambiar automáticamente para coincidir con la cantidad de dispositivos seleccionados.
Figura 11: Selección de dispositivos
Para seleccionar dispositivos por atributos distintos de los números de serie, puedes ingresar manualmente "Especificaciones del dispositivo". Por ejemplo, para seleccionar 3 dispositivos cuyo nombre del producto es "bramble", ingresa lo siguiente:
product:bramble;product:bramble;product:bramble
Los atributos admitidos son los siguientes:
- build_id
- device_serial
- device_type
- hostname
- producto
- product_variant
- sim_state
Todos los dispositivos seleccionados deben estar en el estado Disponible para ejecutar la prueba, y todos cambian al estado Asignado cuando se ejecuta la prueba. Una ejecución de prueba está en el estado En cola mientras espera que los dispositivos estén disponibles.
Cómo agregar acciones del dispositivo
Las acciones del dispositivo son secuencias de comandos que se pueden ejecutar antes de cada ejecución de prueba. Algunas acciones del dispositivo ya están configuradas, como la actualización de firmware y el reinicio. Para crear acciones de dispositivos nuevas, consulta Cómo crear una acción de dispositivo nueva.
Figura 12: Acciones del dispositivo.
Para agregar una acción del dispositivo a una ejecución de prueba, haz clic en Agregar acción nueva, selecciona las casillas de verificación de las acciones que deseas agregar y haz clic en Agregar acciones. Las acciones del dispositivo se realizan de forma secuencial. Para reordenar las acciones, arrástralas.
Figura 13: Reordenar acciones
Establece recursos de prueba
Los recursos de prueba son archivos necesarios para ejecutar una ejecución de prueba. Por ejemplo, la ejecución de CTS requiere un archivo android-cts*.zip
, y la escritura en la memoria flash de un dispositivo requiere que proporciones la imagen de compilación.
La URL de descarga del archivo ZIP del paquete de pruebas debe ser, de forma predeterminada, los vínculos de Google Drive que se les proporcionan a los socios. Para seleccionar otro archivo, haz clic en Explorar. En la ventana emergente, puedes ingresar un vínculo de descarga de archivo, usar un archivo de un canal de compilación autenticado o subir un archivo para usarlo desde el almacenamiento local.
Figura 14: Recursos de prueba
A continuación, se muestra la ventana emergente para seleccionar un recurso de prueba por una URL web. Puedes ingresar el vínculo de la URL de descarga y hacer clic en el botón Seleccionar para confirmar la selección.
Figura 15: Selector de recursos de prueba: URL web.
Si subiste recursos a Google Grive, Google Cloud Storage (GCS) o a otros canales, también puedes navegar a la pestaña del canal específico y seleccionar los recursos allí. Este es un ejemplo para seleccionar un recurso de Google Drive.
Figura 16: Selector de recursos de prueba: Google Drive
Además de seleccionar archivos, los caracteres comodín también se admiten en el campo Nombre de archivo. La documentación está disponible aquí.
Figura 17: Selector de recursos de prueba: Se admite el patrón de comodines.
También puedes seleccionar un archivo del almacenamiento de archivos local de OmniLab ATS. Puedes subir archivos a este almacenamiento o usar directamente archivos y directorios locales.
Figura 18: Selector de recursos de prueba: Almacén de archivos local
Agrega configuraciones de nueva ejecución
Puedes programar repeticiones que comiencen después de que se complete la ejecución principal y carguen sus resultados, pero puedes usar diferentes dispositivos, acciones o recursos.
Figura 19: Se agregaron configuraciones de repetición.
Cómo iniciar una ejecución de prueba
Después de ingresar la información necesaria para la ejecución de prueba, haz clic en Iniciar ejecución de prueba. Si toda la información es válida, comenzará la ejecución de la prueba y se te redireccionará a una página para ver los detalles y el progreso de la ejecución.
Figura 20: Iniciando una ejecución de prueba.
Crea un plan de prueba
Los planes de prueba se usan para crear ejecuciones de prueba de forma periódica. Por ejemplo, ejecutar CTS 9.0 todos los días a las 5 p.m. Para crear un plan de prueba nuevo, haz clic en Crear un plan de prueba.
Figura 21: Crear un plan de prueba
Configura el plan de pruebas
Ingresa el nombre del plan de prueba y las etiquetas que quieras agregar. Luego, selecciona un programa para usar.
- Manual: El plan de prueba crea ejecuciones de prueba solo cuando un usuario hace clic en Run test plan en la página de la lista de planes de prueba.
- Periódica: El plan de prueba programa automáticamente las ejecuciones de prueba en el programa periódico seleccionado. Por ejemplo, programar una ejecución de prueba todos los días a las 5:00 p.m.
- Personalizado: El plan de prueba programa automáticamente las ejecuciones de prueba según la expresión cron ingresada. Por ejemplo, para programar una ejecución de prueba todos los días a las 5:00 p.m., la expresión de cron es
0 17 * * *
.
Figura 22: Configura un plan de prueba.
Agrega paquetes de pruebas
Para agregar paquetes de pruebas que deseas que el plan de prueba programe, haz clic en + Agregar configuración de ejecución de prueba. Selecciona un paquete de pruebas en el menú desplegable Nombre y haz clic en Siguiente paso. Luego, selecciona los dispositivos en los que deseas ejecutar la prueba y haz clic en Add Configuration. Puedes agregar varias configuraciones para cada plan de prueba.
Figura 23: Cómo configurar una ejecución de prueba
Cómo agregar acciones del dispositivo
Agrega las acciones del dispositivo que deseas que se ejecuten antes de cada ejecución de prueba. Consulta Cómo agregar acciones del dispositivo para obtener más detalles.
Figura 24: Agrega acciones del dispositivo.
Establece recursos de prueba
Agregar recursos de prueba a los planes de prueba es lo mismo que agregarlos a ejecuciones de prueba individuales. Consulta Cómo configurar los recursos de prueba para obtener más detalles.
Figura 25: Configuración de recursos de prueba
Cómo ver las ejecuciones de prueba
Lista de ejecuciones de pruebas
Consulta la lista de ejecuciones de pruebas programadas en la página Ejecuciones de pruebas. Haz clic en Ver para obtener más detalles sobre una ejecución de prueba.
También puedes filtrar la lista si ingresas una string en la barra de filtros y presionas la tecla Intro. Para usar varios filtros, sepáralos con una coma. El filtro muestra todas las filas que contienen el texto exacto (sin coincidencias de subcadena) en cualquier columna, excepto Estado y Creado.
Un filtro vacío muestra todas las filas. Actualmente, no hay forma de filtrar filas con valores vacíos.
Figura 26: Lista de ejecuciones de pruebas.
Detalles de la ejecución de prueba
Aquí puedes ver los detalles de una ejecución de prueba, como el estado, los registros y los resultados.
Figura 27: Detalles de la ejecución de prueba.
Estado de la ejecución de prueba
El progreso de una ejecución de prueba se muestra en la sección Estado. Si hay un mensaje relacionado, como el progreso de la descarga, el motivo de la cancelación o un mensaje de error, también se mostrará aquí.
Figura 28: Estado de la ejecución de la prueba.
Los estados de la ejecución de prueba son los siguientes:
- Pendiente: Se están descargando los recursos necesarios.
- En cola: La prueba está lista para ejecutarse cuando un dispositivo esté disponible.
- Running: La prueba se está ejecutando en un dispositivo asignado.
- Completada: La prueba se completó y se informaron sus resultados.
- Cancelada: El usuario canceló la prueba o se agotó el tiempo de espera mientras se intentaba encontrar dispositivos disponibles.
- Error: Se produjo un error que impidió que se ejecutara la prueba.
Cómo cancelar una ejecución de prueba
Si la ejecución de prueba no se completó, puedes cancelarla haciendo clic en Cancelar y, luego, en Sí en el cuadro de diálogo de confirmación. Las ejecuciones de prueba también se cancelan automáticamente si permanecen en el estado En cola por más tiempo que el campo queue_timeout_seconds. Cancelar una ejecución de prueba mientras está en estado Running puede tardar unos minutos en aplicarse.
Figura 29: Cancelar una ejecución de prueba
Resultados de la ejecución de prueba
Una vez que finaliza una ejecución de prueba, se recopilan y muestran los resultados. Para ver detalles adicionales, haz clic en la flecha de cada ejecución. Haz clic en Ver archivos de salida para ver los artefactos de prueba recopilados, como test_result.xml
y test_result_failures.html
.
Figura 30: Resultados de la ejecución de prueba
Puedes ver los registros en vivo del host y de Tradefed en la pestaña Registros.
Figura 31: Pestaña Registros.
Los resultados de los módulos individuales se encuentran en la pestaña Test Results.
Figura 32: Pestaña Resultados de la prueba.
Para descargar los archivos que se usan como recursos de prueba, haz clic en Abrir en la pestaña Recursos de prueba.
Figura 33: Pestaña Recursos de prueba.
Para ver los detalles de la ejecución de prueba, como create_time, ve a la pestaña Config.
Figura 34: Pestaña Config.
Funciones avanzadas
Administra archivos de configuración
OmniLab ATS usa archivos de configuración escritos en YAML para cargar opciones predefinidas, como pruebas, canales de compilación y acciones del dispositivo. Este es un archivo de configuración de ejemplo:
// example_file.yaml
tests:
- id : android.cts.9_0.arm
name: CTS 9.0 (ARM)
test_resource_defs:
- name: android-cts.zip
default_download_url: https://dl.google.com/dl/android/cts/android-cts-9.0_r7-linux_x86-arm.zip
test_resource_type: TEST_PACKAGE
command: cts
env_vars:
- name: TF_PATH
value: ${TF_WORK_DIR}/android-cts/tools:${TF_WORK_DIR}/android-cts/testcases
- name: LD_LIBRARY_PATH
value: ${TF_WORK_DIR}/android-cts/lib:${TF_WORK_DIR}/android-cts/lib64
setup_scripts:
output_file_patterns:
- android-cts/logs/latest/.*
- android-cts/results/latest/.*\.html
- android-cts/results/latest/compatibility_result\..*
- android-cts/results/latest/logo.png
- android-cts/results/latest/test_result.xml
result_file: test_result.xml
java_properties:
- name: CTS_ROOT
value: ${TF_WORK_DIR}
context_file_dir: android-cts/results/
context_file_pattern: '[\d_\.]+\.zip'
retry_command_line: retry --retry 0
runner_sharding_args: --shard-count ${TF_SHARD_COUNT}
build_channels:
- id: google_drive
name: Google Drive
provider_name: Google Drive
device_actions:
- id: flash
name: Flash
test_resource_defs:
- name: bootloader.img
test_resource_type: DEVICE_IMAGE
- name: radio.img
test_resource_type: DEVICE_IMAGE
- name: img.zip
test_resource_type: DEVICE_IMAGE
tradefed_target_preparers:
- class_name: com.android.tradefed.targetprep.RunHostCommandTargetPreparer
option_values:
- name: work-dir
values:
- ${TF_WORK_DIR}
- name: host-setup-command
values:
- adb -s $SERIAL reboot-bootloader
- fastboot -s $SERIAL flash bootloader bootloader.img
- fastboot -s $SERIAL flash radio radio.img
- fastboot -s $SERIAL reboot-bootloader
- fastboot -s $SERIAL -w update img.zip
- adb -s $SERIAL wait-for-device
- name: host-cmd-timeout
values:
- 10m
Cuando configuras tu instancia de ATS de OmniLab, puedes compartir la configuración con otros usuarios si la exportas como un archivo. Para ello, ve a la página Configuración y haz clic en Exportar en la parte superior derecha.
Figura 35: Administración de archivos de configuración
Después de descargar el archivo de configuración, compártelo con otros usuarios. Para agregar el archivo de configuración a su instancia de ATS de OmniLab, debe hacer clic en Import y seleccionar el archivo de configuración.
Crea una nueva acción de dispositivo
Las acciones de dispositivos se usan para automatizar el proceso de configuración del dispositivo. Las acciones son secuencias de comandos que se ejecutan en cada dispositivo en el que se ejecuta la prueba antes de cada ejecución de prueba, incluso antes de los reintentos. Para ver una lista de las acciones disponibles del dispositivo, ve a la página Settings y haz clic en la pestaña Device Actions. Varias acciones del dispositivo ya están configuradas, como el reinicio y la actualización de firmware.
Figura 36: Pestaña Acciones del dispositivo.
Cómo agregar una nueva acción del dispositivo
Haz clic en Nueva acción de dispositivo.
Figura 37: Botón de acción del dispositivo nuevo.
Ingresa un nombre y una descripción.
Figura 38: Es el nombre de la acción del dispositivo.
Haz clic en Agregar preparador de objetivos.
Ingresa el nombre completo de la clase del preparador de objetivos de Trade Federation, por ejemplo,
com.android.tradefed.targetprep.RunHostCommandTargetPreparer
.Figura 39: Cómo agregar un preparador de destino
Puedes encontrar una lista de los preparados de destino disponibles en la referencia com.android.tradefed.targetprep.
Figura 40: Lista de preparadores objetivo.
Agrega cualquier opción que quieras usar con el preparador de destino. Para ver las opciones disponibles, consulta targetprep para obtener el código fuente de cada preparador de destino en AOSP:
Figura 41: Ejemplo de opción de acción.
Para agregar una opción, haz clic en Agregar opción de preparador de objetivos y, luego, ingresa los valores necesarios.
Figura 42: Ejemplo de comando de acción.
Define los recursos de prueba necesarios para ejecutar la acción del dispositivo, por ejemplo, compila imágenes para la actualización. Para agregar una definición de recurso, haz clic en Agregar recurso de prueba y completa los campos obligatorios. Si sabes dónde se encuentran tus archivos, puedes hacer clic en Explorar para proporcionar una URL de descarga predeterminada. Si los preparadores de destino aceptan el directorio como recurso de prueba, selecciona Descomprimir. Luego, especifica el directorio Destination relativo en el directorio de trabajo temporal y los Nombres de archivo que se descomprimirán. Si no se proporcionan nombres de archivo, se descomprimen todos los archivos del recurso de prueba.
Figura 43: Recursos de prueba de acciones.
Haz clic en Actualizar.
Figura 44: Acción para guardar los cambios.
Administra las pruebas
Cómo editar una prueba
Para editar una prueba guardada, ve a la página Pruebas y haz clic en Editar en la fila de la prueba que deseas modificar. Después de cambiar la configuración de prueba, haz clic en Actualizar.
Figura 45: Editar una prueba
Cómo agregar una prueba nueva
Para agregar una prueba nueva, ve a la página Pruebas y haz clic en Crear una prueba nueva. Ingresa la información adecuada y haz clic en Crear.
Figura 46: Crear una prueba
Figura 47: Copiando una prueba.
Cómo exportar configuraciones de host
Después de configurar un host, puedes exportar su configuración a un archivo. Puedes subir este archivo a otros hosts para copiar las configuraciones guardadas.
Para exportar la configuración de un host, ve a la página Configuración y haz clic en Exportar en la esquina superior derecha.
Figura 48: Exporta la configuración de un host.
Para importar un archivo de configuración de host, ve a la página Configuración y haz clic en Importar en la esquina superior derecha.
Figura 49: Importa una configuración de host.
Cómo usar archivos y directorios locales
A partir de la versión R11, los archivos del directorio $HOME/.ats_storage
son accesibles automáticamente en OmniLab ATS. Copia o mueve un archivo a ese directorio y, luego, puedes seleccionarlo en la pestaña Local File cuando programas la ejecución de una prueba.
cp /path/to/file $HOME/.ats_storage
Figura 50: Selecciona un archivo del directorio $HOME/.ats_storage
.
Puedes activar directorios adicionales en el almacén de archivos locales con la marca --mount_local_path
.
mtt start --mount_local_path=/path/to/dir1 --mount_local_path=/path/to/dir2:renamed_dir2
Figura 51: Directorios adicionales activados en el almacén de archivos local
Habilitar el modo para varios hosts
Con el modo para múltiples hosts, los usuarios pueden usar un solo host de controlador de ATS para administrar los dispositivos y las pruebas en varios hosts de trabajo de ATS.
Figura 52: Arquitectura del modo de host múltiple.
Para iniciar el controlador de ATS, usa el siguiente comando:
mtt start --operation_mode=ON_PREMISE
Comprueba que se pueda acceder al controlador en
http://${CONTROLLER_HOSTNAME}:8000
.Para iniciar los trabajadores, usa el siguiente comando:
mtt start --control_server_url=http://CONTROLLER_HOSTNAME:8000 --operation_mode=ON_PREMISE
Si tu red no permite que los hosts se comuniquen entre sí, debes seguir las instrucciones de configuración más avanzadas que se indican a continuación en el trabajador de ATS.
Conecta los dos hosts con túneles SSH. Selecciona los puertos para los puertos principales y del servidor de archivos, por ejemplo, 9000 y 9006.
ssh -L ATS_PORT:localhost:8000 -L FS_PORT:localhost:8006 CONTROLLER_HOSTNAME
Configura y, luego, inicia ATS.
DOCKER_GATEWAY_IP_ADDRESS=$(ip -4 addr show dev docker0 | grep -Eo 'inet [.0-9]+/' | grep -Eo '[.0-9]+')
socat tcp-listen:ATS_PORT,bind="${DOCKER_GATEWAY_IP_ADDRESS}",reuseaddr,fork tcp-connect:127.0.0.1:ATS_PORT &
socat tcp-listen:FS_PORT,bind="${DOCKER_GATEWAY_IP_ADDRESS}",reuseaddr,fork tcp-connect:127.0.0.1:FS_PORT &
mtt start --control_server_url=http://${DOCKER_GATEWAY_IP_ADDRESS}:ATS_PORT \ --control_file_server_url=http://${DOCKER_GATEWAY_IP_ADDRESS}:FS_PORT \ --operation_mode=ON_PREMISE
Limpieza de archivos
El limpiador de archivos es un trabajo cron que se ejecuta cada hora para limpiar archivos según las configuraciones definidas por el usuario. ATS tiene dos configuraciones predeterminadas para archivar los resultados de las ejecuciones de pruebas y borrar los archivos temporales. En esta guía, se explica cómo personalizar las políticas y la configuración para administrar tus archivos de manera eficaz.
Políticas
Una política define la operación que se realizará en los archivos o directorios, y los criterios para seleccionar los destinos. Las operaciones disponibles se muestran en la tabla:
Tipo de operación | Parámetros |
---|---|
ARCHIVE | remove_file : Si es true , quita el archivo después de archivarlo. |
DELETE |
Los criterios se basan en los atributos de los archivos y la información del sistema. Los criterios disponibles se muestran en la tabla:
Tipo de criterio | Descripción | Parámetros |
---|---|---|
LAST_MODIFIED_TIME | Filtra los archivos según la fecha y hora de la última modificación. | ttl : Se admiten varios tipos de expresiones de tiempo, por ejemplo, 10m , 2h , 7 days y 4w . Consulta pytimeparse para conocer los formatos compatibles. |
LAST_ACCESS_TIME | Filtra los archivos según la fecha y hora del último acceso. | Es igual que LAST_MODIFIED_TIME . |
NAME_MATCH | Filtra archivos según su nombre con una expresión regular. | pattern : Expresión regular, por ejemplo, [a-f0-9]{8}-([a-f0-9]{4}-){3}[a-f0-9]{12}\.zip para hacer coincidir los archivos ZIP de resultados. |
SYSTEM_AVAILABLE_SPACE | Activa acciones según el espacio disponible en el sistema. | threshold : Activa una acción cuando el espacio disponible cae por debajo del umbral, por ejemplo, 200 (B), 200KB , 200MB , 200GB , 2TB . |
Figura 53: Agrega una nueva política de limpieza de archivos.
Configuraciones
Una configuración combina una o más políticas con directorios específicos. Los archivos y directorios dentro de los directorios especificados se procesan según las políticas definidas. Las políticas se aplican en el orden en que aparecen en la configuración.
Todos los directorios de destino deben estar ubicados en el directorio /data
. Si tu configuración especifica el directorio de destino como logs
, se interpretará como /data/logs
.
Figura 54: Edita la configuración del limpiador de archivos.
Restablecer
Si haces clic en Restablecer configuración, se revertirá la configuración del limpiador de archivos a su estado predeterminado. Esta acción borra TODOS los elementos personalizados.
Figura 55: Restablece la configuración del limpiador de archivos.
Asistencia
Informes de errores
Tu contribución a OmniLab ATS ayuda a mejorar el desarrollo de la herramienta, y queremos que nos envíes tus comentarios. Consulta las notas de la versión de OmniLab ATS para obtener detalles sobre la versión más reciente. Para informar errores o ofrecer sugerencias, envía un informe de errores. Los socios deben informar errores o sugerencias a través de sus canales de socios.