Te damos la bienvenida a Developer Device Platform Device Run, que te permite ejecutar pruebas en dispositivos Android físicos y virtuales, y en dispositivos iOS físicos en la nube. En esta página, se describen las similitudes entre la ejecución de pruebas de Android y de iOS. Consulta Device Run para Android y Device Run para iOS para conocer los pasos específicos de cada plataforma.
Para usar esta Google Cloud CLI, deberás proporcionar el ID de tu proyecto Google Cloud . Para obtener un resumen de los comandos, consulta gcloud beta
device-run.
Ten en cuenta que estas marcas son obligatorias:
- Dispositivo: Especifica un dispositivo con
--device:--device shiba-35o--device iphonese3-18-4 - Prueba: Especifica el APK o IPA de prueba con
--test:--test /path/to/test.apko--test /path/to/test.ipa
Las siguientes opciones de configuración son comunes para las pruebas de iOS y Android.
Rutas de acceso de entrada y salida de Cloud Storage
- Bucket personalizado de Cloud Storage: Puedes especificar un bucket personalizado de Cloud Storage para las entradas y salidas:
--bucket-name=my-custom-bucketSi no especificas un bucket de Cloud Storage con la marca--bucket-name=, Google Cloud CLI usará un bucket predeterminado llamadoPROJECT_ID-devicerun. - Archivos de entrada: Cuando especificas una ruta de acceso local con las marcas
--test,--additional-appso--xctestrun-file, Google Cloud CLI la copia automáticamente en tu bucket de Cloud Storage engs://BUCKET_NAME/automation/inputs/DATE_TIME_FOUR_CHARS_SUFFIX/cada vez que ejecutas el comando, dondeBUCKET_NAMEse establece de forma predeterminada enPROJECT_ID-devicerun. - Rutas de Cloud: Debido a que la carga de archivos grandes puede llevar mucho tiempo, puedes hacer referencia a ellos directamente con sus rutas de Cloud Storage
gs://para ahorrar tiempo de carga. - Archivos de resultados: Los artefactos de salida se suben a tu bucket de Cloud Storage en
gs://BUCKET_NAME/automation/sessions/session-[SESSION_ID]/.
Ejecuciones síncronas y asíncronas
De forma predeterminada, el comando submit es de bloqueo (síncrono). Esperará a que se complete la prueba y, luego, imprimirá una tabla de resumen de los resultados.
Para enviar la sesión y volver inmediatamente después de subir archivos a Cloud Storage, agrega la marca --async:
Android
gcloud beta device-run sessions submit instrumentation \
--device shiba-35 \
--test ./ANDROID_TESTS.apk \
--async
iOS
gcloud beta device-run sessions submit xctest \
--device iphonese3-18-4 \
--test ./IOS_TESTS.zip \
--async
Esto devuelve un ID de sesión de inmediato. Luego, puedes esperar a que se complete con el comando sessions wait:
gcloud beta device-run sessions wait SESSION_ID
El comando se bloqueará hasta que se complete el trabajo.
Varios dispositivos
Para ejecutar las mismas pruebas en varios dispositivos, proporciona la marca --device con varios IDs de dispositivos separados por comas o con varias marcas --device, cada una especificando un ID de dispositivo distinto.
Android
gcloud beta device-run sessions submit instrumentation \
--device shiba-34,tokay-36 \
--test ./ANDROID_TESTS.apk
O:
gcloud beta device-run sessions submit instrumentation \
--device shiba-34 \
--device tokay-36 \
--test ./ANDROID_TESTS.apk
iOS
gcloud beta device-run sessions submit xctest \
--device iphonese3-18-4,iphonese3-26-3 \
--test ./IOS_TESTS.zip
O:
gcloud beta device-run sessions submit xctest \
--device iphonese3-18-4 \
--device iphonese3-26-3 \
--test ./IOS_TESTS.zip
Tiempo de espera de la prueba
Limita la duración de la ejecución de la prueba:
Android
gcloud beta device-run sessions submit instrumentation \
--device shiba-35 \
--test ./ANDROID_TESTS.apk \
--instrumentation-timeout=10m
iOS
gcloud beta device-run sessions submit xctest \
--device iphonese3-18-4 \
--test ./IOS_TESTS.zip \
--xctest-timeout=10m
El rango válido es de 1m a 1h y el valor predeterminado es 5m.
¿Qué sigue?
Ejecuta una prueba de Android o ejecuta una prueba de iOS con la plataforma de dispositivos para desarrolladores.