Android Test Station OmniLab

OmniLab ATS è uno strumento di test che gli sviluppatori Android e i collaudatori possono utilizzare utilizzare un'interfaccia utente per l'esecuzione di suite di test Android standard, come Suite di test di compatibilità Android (CTS). Questo strumento funge da interfaccia web per vari framework di test, ad esempio Trade Federation (TF) e Google Mobly, che consente di eseguire CTS e eseguire test multi-dispositivo su una serie di dispositivi di test con una configurazione minima, oltre a stabilire una pianificazione per l'esecuzione continua dei test.

Configura ATS di OmniLab

Questa sezione spiega come installare e configurare OmniLab ATS.

OmniLab ATS utilizza il codice sorgente delle seguenti posizioni:

Installa OmniLab ATS

Segui gli eventuali requisiti hardware e software delle suite di test che esegui.

I requisiti per la CTS sono disponibili su source.android.com.

Non esistono requisiti hardware aggiuntivi per OmniLab ATS, ma consigliamo di Con il requisito host CTS come punto di partenza.

Esistono due modi per installare OmniLab ATS:

Installa con il programma di installazione

Su Ubuntu 20.04 e versioni successive, il programma di installazione installa e configura tutti i programmi e le risorse necessarie per eseguire OmniLab ATS.

Per utilizzare il programma di installazione:

  1. Esegui il programma di installazione:

    curl https://storage.googleapis.com/android-mtt.appspot.com/prod/install.sh | bash
    
  2. Esegui mtt version per controllare la versione installata dell'interfaccia a riga di comando ATS di OmniLab.

Installa manualmente

Installa Docker
  1. Segui le istruzioni per l'installazione di Docker Community Edition (CE) sul tuo computer Linux.

  2. Segui le passaggi post-installazione per gestire Docker come utente non root.

  3. Potresti dover riavviare la finestra del terminale oppure uscire e accedere di nuovo per rendere effettive le modifiche alle autorizzazioni.

di Gemini Advanced.
Installa Python 3

L'interfaccia a riga di comando ATS di OmniLab è verificata rispetto alle versioni Python dalla 3.7 alla 3.11.

Per Ubuntu 16.04 o versioni precedenti, aggiungi prima il repository per Python 3 eseguendo una dei seguenti:

  • Esegui questo comando:

    sudo add-apt-repository ppa:deadsnakes/ppa
    
  • Crea e installa il repository dalla fonte.

Per installare Python 3, esegui questi comandi:

sudo apt-get update
sudo apt install python3 python3-distutils

Per installare una versione specifica di Python 3 (ad esempio, 3.10), esegui questi comandi anziché:

sudo apt-get update
sudo apt install python3.10 python3.10-distutils

Scarica l'interfaccia a riga di comando ATS di OmniLab

Scarica qui il pacchetto dell'interfaccia a riga di comando (CLI).

Avvia ATS OmniLab

Avvia OmniLab ATS con il seguente comando:

mtt start

Al primo avvio della UI, potrebbero essere necessari alcuni minuti perché venga visualizzata. Interfaccia a riga di comando visualizza un URL web per accedere all'interfaccia utente in un browser. Per impostazione predefinita, l'URL web è localhost:8000. Se necessario, puoi cambiare la porta predefinita all'avvio con il flag --port.

Se è disponibile una versione più recente, puoi eseguire l'aggiornamento alla versione corrente. Puoi consulta le note di rilascio per conoscere le ultime uscite.

Per eseguire l'aggiornamento alla versione corrente, esegui:

mtt start --force_update

Per interrompere l'app, esegui:

mtt stop

Per visualizzare un elenco di altri comandi, utilizza:

mtt --help

Esegui il backup e ripristina il database

Per eseguire il backup del database ATS di OmniLab, arresta l'app ed esegui questo comando: che esegue il backup del database attuale in un file TAR denominato mtt-backup.tar in nella tua home directory:

docker run --rm --mount source=mtt-data,target=/data -v ~:/out ubuntu bash -c "cd /data && tar cvf /out/mtt-backup.tar ."

Per eseguire il ripristino, esegui questo comando prima di avviare l'app:

docker run --rm --mount source=mtt-data,target=/data -v ~:/out ubuntu bash -c "cd /data && tar xvf /out/mtt-backup.tar"

Configurazione guidata

Dopo aver installato ed eseguito OmniLab ATS per la prima volta, la configurazione guidata richiede alcuni passaggi che ti aiuteranno a personalizzare lo strumento in base al tuo ambiente. Qualsiasi le modifiche che apporti qui possono essere riconfigurate in un secondo momento tramite la pagina Impostazioni.

Ripristina un backup della configurazione

Se hai eseguito il backup di un file di configurazione da in un altro host ATS di OmniLab, puoi caricare il file per copiare le configurazioni modificati da tale host facendo clic sul pulsante Carica file.

Ripristina backup della configurazione

Figura 1. Ripristino di un backup della configurazione.

Impostare l'account di servizio predefinito

Puoi impostare un account di servizio che OmniLab ATS utilizza per impostazione predefinita quando accede alle tue risorse (ad esempio, Google Cloud Storage e Google Drive). Per autenticare il tuo account di servizio, fai clic su Carica la chiave dell'account di servizio e seleziona il file della chiave JSON dell'account di servizio.

Imposta account di servizio

Figura 2. Impostazione dell'account di servizio in corso.

Una volta che l'account di servizio viene autenticato, l'email dell'account viene visualizzato nell'angolo in alto a destra della pagina. Per cambiare servizio account, fai clic sul nome dell'account, rimuovi l'account predefinito corrente e carica una nuova chiave dell'account di servizio.

Cambia account di servizio

Figura 3. Modifica dell'account di servizio.

Importa set di configurazione

Un set di configurazione è un bundle di configurazioni per l'esecuzione di suite di test, tra cui le azioni con i dispositivi e creare canali. I set di configurazione sono ospitati in un ambiente Google nel bucket Cloud Storage (GCS). Dopo aver autenticato il canale di build GCS con il tuo Account Google, vedrai un elenco di tutti i set di configurazione a tua disposizione.

Seleziona i set di configurazione che desideri aggiungere all'host di Test Station e fai clic su Importa selezionati.

Importa set di configurazione

Figura 4. Importazione di un set di configurazione.

Includi impostazioni Wi-Fi

Alcuni test CTS richiedono che il dispositivo si connetta a un hotspot Wi-Fi. Per selezionare il tuo Rete Wi-Fi, inserisci l'SSID Wi-Fi e la PSK Wi-Fi facoltativa.

Impostazioni Wi-Fi

Figura 5. Impostazioni hotspot Wi-Fi.

Dopo aver completato la configurazione guidata, la pagina si ricarica con le nuove impostazioni applicati.

Connetti un dispositivo

Per utilizzare un dispositivo per il test, è necessario attivare il debug USB. Per attivare il debug:

  1. Segui le istruzioni in Attiva le Opzioni sviluppatore e il debug.

  2. Se prevedi di utilizzare build Android di test precaricate con chiavi ADB personalizzate, inserisci i file .adb_key personalizzati nella directory ~/.android/.

    I file vengono caricati automaticamente e passati ad ADB per l'attivazione automatica della connessione USB eseguire il debug dopo il flashing del dispositivo per i dispositivi che eseguono queste build.

  3. Collega il dispositivo al computer host tramite USB.

    Il dispositivo verrà visualizzato nella scheda Dispositivi ATS di OmniLab entro un minuto dopo aggiornare l'interfaccia web. Puoi anche visualizzare lo stato dei dispositivi su questa scheda.

    Connetti un dispositivo

    Figura 6. Connessione di un dispositivo in corso...

I diversi stati del dispositivo sono:

  • Disponibile: il dispositivo è connesso e pronto per eseguire un test.
  • Allocato: il dispositivo è connesso ed è in corso un test. Ciascuna dispositivo può eseguire un solo test alla volta, quindi deve terminare la relativa il test attuale prima di eseguirne uno nuovo.
di Gemini Advanced.

Esecuzione di un test

Seleziona un test

OmniLab ATS include una serie di configurazioni CTS pre-integrate. Per eseguire uno di questi test, vai alla scheda Suite di test e fai clic su Esegui test per test.

Seleziona un test

Figura 7. Selezione di un test.

Per modificare i test o aggiungerne di nuovi, consulta la sezione Aggiunta di test.

Configura esecuzione di test

Modifica i parametri da utilizzare per questa specifica esecuzione di test. La maggior parte dei parametri sono precompilati con valori definiti nella configurazione di test selezionata.

Questo passaggio può essere completato usando i valori predefiniti, ma puoi modificare qualsiasi valore come Max Riprova e Command in base alle tue esigenze.

Configura esecuzione di test

Figura 8. Configurazione di un'esecuzione di test.

I parametri dell'esecuzione del test sono:

  • Nome: il nome della suite di test che vuoi eseguire.
  • Conteggio esecuzioni: numero di volte in cui questa esecuzione di test deve essere eseguita quando in fase di pianificazione. Le esecuzioni dei test vengono pianificate utilizzando Trade Federation, che gestisce fino a 20 il test viene eseguito in parallelo, se c'è la possibilità di farlo.
  • Numero massimo di nuovi tentativi: il numero massimo di volte in cui è necessario ripetere un'esecuzione di test, se almeno uno test non riuscito. Il valore generalmente impostato su 4-6 nuovi tentativi per un'esecuzione CTS completa gestire test irregolari.
  • Timeout coda: se l'esecuzione di un test rimane nello stato In coda troppo a lungo, viene annullato automaticamente. Specifica il tempo di attesa prima del giorno l'annullamento qui. Il valore predefinito è 24 ore.
  • Comando - Il comando per eseguire la suite di test. Puoi inserire altri gli argomenti della riga di comando. Ad esempio, esegui un modulo specifico in CTS 8.1 con:

    cts-suite -m ShortModuleName
    
  • Riprova comando - Il comando per ritentare una suite di test. Puoi aggiungere altri argomenti della riga di comando. Ad esempio, per riprovare solo modulo specifico in CTS 8.1, utilizzare:

    cts --retry 0 -m ShortModuleName
    

    Gli argomenti Riprova potrebbero essere diversi da quelli disponibili con il comando iniziale. quindi controlla i parametri supportati sul sito ufficiale per il test selezionato suite.

  • Esecuzione di test precedente: se vuoi ripetere un test precedente:

    • Locale: se l'esecuzione è stata avviata sull'host attuale, inserisci l'esecuzione di test ID visualizzato durante la visualizzazione dei dettagli dell'esecuzione del test.

      Esecuzione di test precedente locale

      Figura 9. Esecuzione di test locale precedente.

    • Remoto: se l'esecuzione è stata avviata su un host diverso, carica il test del file dei risultati selezionando Remoto e facendo clic su Carica risultati dei test. File e selezione di un file dallo spazio di archiviazione locale.

      Esecuzione test precedente remota

      Figura 10. Esecuzione del test precedente da remoto.

Seleziona dispositivi

Fai clic sulle caselle di controllo per selezionare i dispositivi da allocare per l'esecuzione del test suite. Il numero di shard dovrebbe cambiare automaticamente per corrispondere al numero di dispositivi selezionati.

Seleziona dispositivi

Figura 11. Selezione dei dispositivi in corso...

Per selezionare i dispositivi in base ad attributi diversi dal numero di serie dei dispositivi, puoi: inserisci "Specifiche del dispositivo". Ad esempio, per selezionare tre dispositivi il cui nome del prodotto è "bramble", inserisci quanto segue:

product:bramble;product:bramble;product:bramble

Gli attributi supportati sono:

  • ID build
  • numero_dispositivo
  • device_type
  • nome host
  • prodotto
  • variante_prodotto
  • stato_sim

Per eseguire l'esecuzione del test, tutti i dispositivi selezionati devono essere nello stato Disponibile. e passano allo stato Allocato quando viene eseguita l'esecuzione del test. R esecuzione di test è in stato In coda mentre è in attesa che i dispositivi diventino disponibili.

Aggiungi azioni dispositivo

Le azioni del dispositivo sono script che possono essere eseguiti prima di ogni test. Alcune le azioni dei dispositivi sono già configurate, ad esempio il flashing e il riavvio. A creare nuove azioni dispositivo, vedi Creare una nuova azione dei dispositivi.

Azioni dispositivo

Figura 12. Azioni del dispositivo.

Per aggiungere un'azione del dispositivo a un'esecuzione di test, fai clic su Aggiungi nuova azione e seleziona l'icona caselle di controllo relative alle azioni da aggiungere e fai clic su Aggiungi azioni. Azioni dispositivo vengono eseguite in sequenza. Puoi riordinare le azioni trascinandole.

Aggiungi azioni

Figura 13. Azioni di riordinamento.

Impostazione delle risorse di test

Le risorse di test sono file necessari per eseguire un'esecuzione di test. Ad esempio, la pubblicazione CTS richiede un file android-cts*.zip, mentre per il flashing di un dispositivo è necessario fornisce l'immagine build.

L'URL di download del file ZIP della suite di test deve essere, per impostazione predefinita, Google Drive i link forniti ai partner. Puoi selezionare un file diverso facendo clic su Sfoglia. Nella finestra popup puoi inserire un link per il download di un file, utilizzare il file un canale di build autenticato o carica un file da utilizzare dallo spazio di archiviazione locale.

Risorse di test

Figura 14. Risorse di test.

Di seguito è riportata la finestra popup per selezionare una risorsa di test tramite un URL web. Puoi inserisci il link dell'URL di download e fai clic sul pulsante Seleziona per confermare selezione.

Selettore risorse di test - URL web

Figura 15. Selettore risorse di test - URL web.

Se hai caricato risorse su Google Grive, Google Cloud Storage (GCS) o altri canali, puoi anche accedere alla scheda del canale specifico e selezionare risorse. Ecco un esempio per la selezione di una risorsa da Google Drive.

Selettore risorse di prova - Google Drive

Figura 16. Selettore risorse di prova: Google Drive.

Oltre alla semplice selezione dei file, sono supportati anche i caratteri jolly in Nome file. La documentazione è disponibile qui

Selettore risorse di test - Supporto pattern con caratteri jolly

Figura 17. Selettore risorse di test - Supporto dei pattern con caratteri jolly.

Puoi anche selezionare un file dallo spazio di archiviazione locale di OmniLab ATS. Puoi caricare in questo spazio di archiviazione utilizzare direttamente file e directory locali.

Selettore risorse di test - Archivio file locale

Figura 18. Selettore risorse di test - Archivio file locale.

Aggiungi riesecuzione di configurazioni

Puoi pianificare le repliche che iniziano dopo il completamento dell'esecuzione principale caricare i risultati, ma può utilizzare dispositivi, risorse o azioni diversi.

Aggiungi riesecuzione configurazioni

Figura 19. Aggiunta di configurazioni di riesecuzione.

Avvia un'esecuzione di test

Dopo aver inserito le informazioni necessarie per l'esecuzione del test, fai clic su Avvia test esegui. Se tutte le informazioni sono valide, viene avviata l'esecuzione del test reindirizzato a una pagina per visualizzare i dettagli e l'avanzamento dell'esecuzione del test.

Avvia esecuzione test

Figura 20. Avvio di un'esecuzione di test.

Crea un piano di test

I piani di test vengono utilizzati per creare esecuzioni di test in base a una pianificazione periodica. Ad esempio: con CTS 9.0 ogni giorno alle 17.00. Per creare un nuovo piano di test, fai clic su Crea un nuovo piano di test.

Crea piano di test

Figura 21. Creazione di un piano di test in corso...

Configura piano di test

Inserisci il nome del piano di test e le eventuali etichette che vuoi aggiungere. Quindi seleziona una programmazione da utilizzare.

  • Manuale: il piano di test crea esecuzioni di test solo quando un utente fa clic. Esegui il piano di test nella pagina dell'elenco dei piani di test.
  • Periodico: il piano di test pianifica automaticamente l'esecuzione del test il giorno pianificazione periodica selezionata. Ad esempio, pianificando un'esecuzione di test ogni giorno alle 17:00.
  • Personalizzato: il test di pianificazione automatica del piano di test viene eseguito in base alla espressione cron immessa. Ad esempio: per pianificare un'esecuzione di test ogni giorno alle 17:00, l'espressione cron è 0 17 * * *.

Configura piano di test

Figura 22. Configurazione di un piano di test.

Aggiungi suite di test

Aggiungi le suite di test che vuoi pianificare dal piano di test facendo clic su + Aggiungi configurazione dell'esecuzione di test. Seleziona una suite di test dal menu a discesa Nome e fai clic su Passaggio successivo. Dopodiché seleziona i dispositivi su cui vuoi eseguire il test e Fai clic su Add Configuration (Aggiungi configurazione). Puoi aggiungere più configurazioni per ogni test e il piano d'azione.

Configura esecuzione di test

Figura 23. Configurazione di un'esecuzione di test.

Aggiungi azioni dispositivo

Aggiungi le azioni dei dispositivi che vuoi eseguire prima di ogni esecuzione di test. Per ulteriori dettagli, consulta la sezione Aggiunta di azioni dei dispositivi.

Aggiungi azioni dispositivo

Figura 24. Aggiunta delle azioni dei dispositivi in corso...

Impostazione delle risorse di test

Aggiungere risorse di test ai piani di test equivale ad aggiungerle a singoli test viene eseguito. Per ulteriori dettagli, consulta la sezione Impostazione delle risorse di test.

Imposta risorse di test

Figura 25. Impostazione delle risorse di test.

Visualizza esecuzioni test

Elenco esecuzioni test

Visualizza l'elenco delle esecuzioni di test pianificate nella pagina Esecuzioni di test. Fai clic su Visualizza per visualizza ulteriori dettagli sull'esecuzione di un test.

Puoi anche filtrare l'elenco inserendo una stringa nella barra dei filtri e premendo il tasto Invio. Puoi utilizzare più filtri separandoli con una virgola. Il filtro restituisce tutte le righe che contengono il testo esatto (nessuna sottostringa) corrispondenza) in qualsiasi colonna, tranne Status (Stato) e Created (Creato).

Un filtro vuoto restituisce tutte le righe. Al momento non è possibile filtrare in base alle righe con valori vuoti.

Elenco esecuzioni test

Figura 26. Elenco esecuzioni del test.

Dettagli esecuzione test

Puoi visualizzare i dettagli di un'esecuzione di test qui, ad esempio lo stato, i log e che consentono di analizzare i dati e visualizzare i risultati.

Dettagli esecuzione test

Figura 27. Dettagli esecuzione del test.

Stato esecuzione test

Lo stato di avanzamento di un'esecuzione di test viene mostrato nella sezione Stato. Se è presente una come l'avanzamento del download, il motivo dell'annullamento o un messaggio di errore, come mostrato qui.

Stato esecuzione test

Figura 28. Stato esecuzione test.

Gli stati dell'esecuzione del test sono:

  • In attesa: le risorse richieste sono in fase di download.
  • In coda: il test è pronto per essere eseguito quando un dispositivo diventa disponibile.
  • In esecuzione: il test è in esecuzione su un dispositivo allocato.
  • Completato: il test è stato completato e ha segnalato i risultati.
  • Annullato: il test è stato annullato dall'utente o si è verificato un timeout durante il tentativo trovare i dispositivi disponibili.
  • Errore: si è verificato un errore che ha impedito l'esecuzione del test.

Annullare l'esecuzione di un test

Se l'esecuzione del test non è stata completata, fai clic su Annulla per annullarla. quindi facendo clic su nella finestra di dialogo di conferma. Anche le esecuzioni dei test vengono annullati automaticamente se rimangono nello stato Queued per un periodo superiore a quello queue_timeout_seconds. Annullamento di un'esecuzione di test in stato In esecuzione potrebbero essere necessari alcuni minuti prima che le modifiche diventino effettive.

Annulla esecuzione test

Figura 29. Annullamento dell'esecuzione di un test.

Risultati dell'esecuzione del test

Al termine dell'esecuzione di un test, i risultati vengono raccolti e visualizzati. Puoi visualizza ulteriori dettagli facendo clic sulla freccia di ogni esecuzione. Fai clic su Visualizza output File per vedere gli artefatti del test raccolti, ad esempio test_result.xml e test_result_failures.html.

Risultati dell'esecuzione del test

Figura 30. Risultati dell'esecuzione del test.

Puoi visualizzare i log dell'host live e di quelli scambiati nella scheda Log.

Test dei log di esecuzione

Figura 31. Scheda Log.

I risultati dei singoli moduli sono disponibili nella scheda Risultati dei test.

Scheda dei risultati del test

Figura 32. Scheda Risultati dei test.

Puoi scaricare i file utilizzati come risorse di test facendo clic su Apri nella Scheda Risorse di test.

Scheda Risorse di test

Figura 33. Scheda Risorse di test.

Per visualizzare i dettagli dell'esecuzione del test, ad esempio create_time, vai alla scheda Configurazione.

Scheda Configurazione di test

Figura 34. Configurazione.

Funzionalità avanzate

Gestisci i file di configurazione

OmniLab ATS utilizza file di configurazione scritti in YAML per Caricare opzioni predefinite come test, creazione di canali e azioni dei dispositivi. Ecco un esempio di file di configurazione:

// 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

Quando configuri l'istanza ATS di OmniLab, puoi condividere la configurazione altri utenti esportandoli come file. Per farlo, vai alla pagina Impostazioni e fai clic su Esporta in alto a destra.

Gestione dei file di configurazione

Figura 35. Gestione dei file di configurazione.

Una volta scaricato il file di configurazione, condividilo con altri utenti. Può aggiungere il file di configurazione alla propria istanza ATS di OmniLab facendo clic Importa e seleziona il file di configurazione.

Crea una nuova azione dei dispositivi

Le azioni dei dispositivi vengono utilizzate per automatizzare il processo di configurazione dei dispositivi. Le azioni sono script eseguiti su ciascun dispositivo su cui è in esecuzione il test prima di ogni test; anche prima dei nuovi tentativi. Per visualizzare un elenco delle azioni disponibili per i dispositivi, vai a Impostazioni, quindi fai clic sulla scheda Azioni dispositivo. Sono disponibili diverse azioni dei dispositivi è già configurata, ad esempio riavvia e lampeggia.

Scheda Azioni dispositivo

Figura 36. Scheda Azioni dispositivo.

Aggiungere una nuova azione dei dispositivi

  1. Fai clic su Nuova azione dispositivo.

    Pulsante di azione nuovo dispositivo

    Figura 37. Pulsante di azione per il nuovo dispositivo.

  2. Inserisci un nome e una descrizione.

    Nome azione dispositivo

    Figura 38. Nome dell'azione del dispositivo.

  3. Fai clic su Add Target Preparer (Aggiungi preparatore del target).

  4. Inserisci il target della Federazione commerciale Nome completo del corso per la preparazione, ad esempio, com.android.tradefed.targetprep.RunHostCommandTargetPreparer.

    Aggiungi preparatore target

    Figura 39. Aggiunta di un preparatore di destinazione.

    Puoi trovare un elenco dei preparativi dei target disponibili nella com.android.tradefed.targetprep riferimento.

    Elenco di preparativi target

    Figura 40. Elenco dei preparativi target.

  5. Aggiungi le opzioni da utilizzare con il preparatore di destinazione. Per visualizzare le opzioni disponibili: verifica prep target per il codice sorgente per ogni preparatore di destinazione in AOSP:

    Esempio di opzione di azione

    Figura 41. Esempio di opzione di azione.

  6. Per aggiungere un'opzione, fai clic su Add Target Preparer Opzione (Aggiungi opzione di preparazione al target) e inserisci il valore i valori obbligatori.

    Esempio di comando di azione

    Figura 42. Esempio di comando di azione.

  7. Definisci le risorse di test necessarie per eseguire l'azione sul dispositivo, ad esempio esempio, creare immagini per il flashing. Per aggiungere una definizione di risorsa, fai clic su Add Test Resource (Aggiungi risorsa di test) e compila i campi obbligatori. Se sai dove posizione dei file, puoi fornire un URL di download predefinito facendo clic sfoglia. Se i preparativi target accettano la directory come risorsa di test, Seleziona Decomprimi. Poi specifica la directory Destination relativa. nella directory di lavoro temporanea e in Nomi file decompresso. Se non viene fornito alcun nome, tutti i file vengono decompressi la risorsa di test.

    Risorse per test delle azioni

    Figura 43. Risorse di test delle azioni.

  8. Fai clic su Aggiorna.

    Azione Salva modifiche

    Figura 44. Azione per salvare le modifiche.

Gestisci test

Modifica un test

Per modificare un test salvato, vai alla pagina Test e fai clic su Modifica nella riga della che vuoi modificare. Dopo aver modificato la configurazione di test, fai clic su Aggiorna.

Modifica un test

Figura 45. Modifica di un test.

Aggiungi un nuovo test

Per aggiungere un nuovo test, vai alla pagina Test e fai clic su Crea un nuovo test. Invio le informazioni appropriate e fai clic su Crea.

Crea un test

Figura 46. Creazione di un test in corso...

Copia un test

Figura 47. Copia di un test in corso...

Esporta configurazioni host

Dopo aver configurato un host, puoi esportare le configurazioni dell'host in un file. Puoi caricare questo file su altri host per copiare le configurazioni salvate.

Per esportare le configurazioni di un host, vai alla pagina Impostazioni e fai clic su Esporta nell'angolo in alto a destra.

Esportazione delle configurazioni host

Figura 48. Esportazione di una configurazione host in corso...

Per importare un file di configurazione host, vai alla pagina Impostazioni e fai clic su Importa nell'angolo in alto a destra.

Importazione delle configurazioni host

Figura 49. Importazione di una configurazione host.

Utilizza file e directory locali

A partire dalla versione R11, i file nella directory $HOME/.ats_storage vengono automaticamente accessibili in ATS di OmniLab. Copia o sposta un file al suo interno directory, quindi potrai selezionarla dalla scheda File locale quando pianifichi dell'esecuzione del test.

cp /path/to/file $HOME/.ats_storage

Selezione di un file locale

Figura 50. Selezione di un file dalla directory $HOME/.ats_storage.

Puoi montare directory aggiuntive nel file store locale con --mount_local_path flag.

mtt start --mount_local_path=/path/to/dir1 --mount_local_path=/path/to/dir2:renamed_dir2

Directory montate aggiuntive

Figura 51. Directory aggiuntive montate nell'archivio di file locale.

Abilita la modalità multi-host

Con la modalità multi-host, gli utenti possono utilizzare un singolo host di controller ATS per gestire dispositivi e test su più host worker ATS.

Architettura in modalità multi-host

Figura 52. Architettura in modalità multi-host.

  1. Per avviare il controller ATS, utilizza il seguente comando:

    mtt start --operation_mode=ON_PREMISE
    
  2. Controlla che il controller è accessibile alle ore http://${CONTROLLER_HOSTNAME}:8000.

  3. Per avviare i worker, utilizza il seguente comando:

    mtt start --control_server_url=http://CONTROLLER_HOSTNAME:8000 --operation_mode=ON_PREMISE
    

Se la rete non consente agli host di comunicare tra loro, devi seguire le istruzioni per la configurazione più avanzata riportate di seguito sul worker ATS.

  1. Connetti i due host utilizzando i tunnel SSH. Seleziona le porte per porte primarie e del file server, ad esempio 9000 e 9006.

    ssh -L ATS_PORT:localhost:8000 -L FS_PORT:localhost:8006 CONTROLLER_HOSTNAME
    
  2. Configura e avvia 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
    

Pulizia dei file

La pulizia dei file è un cron job che viene eseguito ogni ora per pulire i file in base configurazioni definite dall'utente. ATS ha due configurazioni predefinite per archiviare i test eseguire i risultati ed eliminare i file temporanei. Questa guida spiega come personalizzare i criteri e le configurazioni per una gestione efficace dei file.

Norme

Un criterio definisce l'operazione da eseguire sui file o sulle directory criteri per selezionare i target. Le operazioni disponibili sono mostrate nella tabella:

Tipo di operazioneParametri
ARCHIVEremove_file: se true, rimuovi il file dopo l'archiviazione.
DELETE

I criteri si basano sugli attributi dei file e sulle informazioni di sistema. Disponibile sono riportati nella tabella:

Tipo di criterioDescrizioneParametri
LAST_MODIFIED_TIMEFiltra i file in base alla data e all'ora dell'ultima modifica.ttl: sono supportati diversi tipi di espressioni temporali, ad esempio 10m, 2h, 7 days, 4w. Vedi pytimeparse per i formati supportati.
LAST_ACCESS_TIMEFiltra i file in base alla data e all'ora dell'ultimo accesso.Uguale a LAST_MODIFIED_TIME.
NAME_MATCHFiltra i file in base al nome utilizzando le espressioni regolari.pattern: espressione regolare, ad esempio [a-f0-9]{8}-([a-f0-9]{4}-){3}[a-f0-9]{12}\.zip per trovare corrispondenze con i codici postali dei risultati.
SYSTEM_AVAILABLE_SPACEAttivare le azioni in base allo spazio disponibile nel sistema.threshold: attiva l'azione quando lo spazio disponibile scende al di sotto della soglia, ad esempio 200(B), 200KB, 200MB, 200GB, 2TB.

Nuovo criterio per la pulizia dei file

Figura 53. Aggiungi un nuovo criterio per la pulizia dei file.

Configurazioni

Una configurazione combina uno o più criteri con directory specifiche. I file all'interno delle directory specificate, vengono elaborate in base dei criteri definiti. I criteri vengono applicati nell'ordine in cui appaiono nella configurazione.

Tutte le directory di destinazione devono trovarsi nella directory /data. Se le tue config specifica la directory di destinazione come logs, viene interpretata come /data/logs.

Modifica configurazione di pulizia file

Figura 54. Modifica la configurazione della pulizia dei file.

Resetta

Facendo clic su Ripristina impostazioni, la configurazione dello strumento di pulizia dei file viene ripristinata predefinito. Questa azione cancella TUTTI gli elementi personalizzati.

Reimposta le impostazioni dello strumento di pulizia dei file

Figura 55. Ripristina le impostazioni dello strumento di pulizia dei file.

Assistenza

Segnalazioni di bug

Il tuo contributo ad OmniLab ATS contribuisce a migliorare lo sviluppo dello strumento e vorremmo sapere cosa ne pensi. Consulta le Note di rilascio di OmniLab ATS per informazioni dettagliate sulla release più recente. Per segnalare bug o offrire suggerimenti: inviare una segnalazione di bug. I partner devono segnalare bug o suggerimenti utilizzando i propri canali partner.