Bem-vindo ao Developer Device Platform Device Run, que permite executar testes em dispositivos Android físicos e virtuais e dispositivos iOS físicos na nuvem. Esta página descreve as semelhanças entre a execução de testes do Android e do iOS. Consulte Execução no dispositivo para Android e Execução no dispositivo para iOS para etapas específicas da plataforma.
Para usar essa Google Cloud CLI, você precisa fornecer o ID do projeto Google Cloud . Para um resumo dos comandos, consulte: gcloud beta
device-run
Estas flags são obrigatórias:
- Dispositivo: especifique um dispositivo usando
--device:--device shiba-35ou--device iphonese3-18-4 - Teste: especifique o APK ou IPA de teste usando
--test:--test /path/to/test.apkou--test /path/to/test.ipa.
As opções de configuração a seguir são comuns aos testes do Android e do iOS.
Caminhos de entrada e saída do Cloud Storage
- Bucket personalizado do Cloud Storage: é possível especificar um bucket personalizado do Cloud Storage para entradas e saídas:
--bucket-name=my-custom-bucket. Se você não especificar um bucket do Cloud Storage usando a flag--bucket-name=, a Google Cloud CLI vai usar um bucket padrão chamadoPROJECT_ID-devicerun. - Arquivos de entrada: quando você especifica um caminho local com as flags
--test,--additional-appsou--xctestrun-file, a Google Cloud CLI copia automaticamente para seu bucket do Cloud Storage emgs://BUCKET_NAME/automation/inputs/DATE_TIME_FOUR_CHARS_SUFFIX/sempre que você executa o comando.BUCKET_NAMEtem como padrãoPROJECT_ID-devicerun. - Caminhos da nuvem: como o upload de arquivos grandes pode levar tempo, é possível referenciá-los diretamente usando os caminhos
gs://do Cloud Storage para economizar tempo de upload. - Arquivos de resultados: os artefatos de saída são enviados para o bucket do Cloud Storage em
gs://BUCKET_NAME/automation/sessions/session-[SESSION_ID]/.
Execuções síncronas e assíncronas
Por padrão, o comando de envio é bloqueador (síncrono). Ele vai aguardar a conclusão do teste e imprimir uma tabela de resumo dos resultados.
Para enviar a sessão e retornar imediatamente após fazer upload de arquivos para o
Cloud Storage, adicione a flag --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
Isso retorna um ID de sessão imediatamente. Em seguida, aguarde usando o comando
sessions wait:
gcloud beta device-run sessions wait SESSION_ID
O comando vai bloquear até que o job seja concluído.
Vários dispositivos
Para executar os mesmos testes em vários dispositivos, forneça a flag --device com vários IDs de dispositivos separados por vírgulas ou com várias flags --device, cada uma especificando um ID de dispositivo diferente.
Android
gcloud beta device-run sessions submit instrumentation \
--device shiba-34,tokay-36 \
--test ./ANDROID_TESTS.apk
Ou:
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
Ou:
gcloud beta device-run sessions submit xctest \
--device iphonese3-18-4 \
--device iphonese3-26-3 \
--test ./IOS_TESTS.zip
Testar tempo limite
Limite a duração da execução do teste:
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
O intervalo válido é de 1m a 1h e o padrão é 5m.
A seguir
Execute um teste do Android ou um teste do iOS com a plataforma de dispositivo do desenvolvedor.