Guida avanzata ACTS

Questa è una guida su come eseguire i test della suite di test ACTS (Android Comms Test Suite).

Ottieni il codice

La versione più aggiornata di ACTS è disponibile nel repository Gerrit di Android Open Source Project (AOSP) in /platform/tools/test/connectivity/.

Per informazioni dettagliate su come sincronizzare il codice, consulta Scaricare il codice sorgente e il codelab per sviluppatori Android. Quando sincronizzi il codice, sincronizza il ramo principale. Non sincronizzare una build con tag.

Tieni presente che, quando scarichi ACTS, non è necessario sincronizzare l'intero repository Android. Per sincronizzare solo ACTS, dopo aver eseguito il comando repo init, esegui:

repo sync platform/tools/test/connectivity

Puoi trovare gli ACTS in <repo>/tools/test/connectivity/acts/.

Configurazione dell'ambiente

Per assicurarti che ACTS abbia le dipendenze richieste per la configurazione, installa i seguenti strumenti di configurazione di Python 3:

sudo apt-get install python3-setuptools
sudo apt-get install python3-pip
sudo apt-get install adb fastboot
sudo pip3 install --upgrade pip setuptools
# Needed due to an on-going bug.
sudo apt-get install protobuf-compiler

Installa ACTS

Lo script setup.py presente in <repo>/tools/test/connectivity/acts/framework installa le altre dipendenze e ACTS stesso.

Per lo sviluppo continuo su o con ACTS, esegui il seguente comando:

cd <repo>/tools/test/connectivity/acts/framework/
sudo python3 setup.py develop
cd -

Se vuoi eseguire solo i test, esegui invece questo comando:

cd <repo>/tools/test/connectivity/acts/framework/
sudo python3 setup.py install
cd -

Verifica installazione

Dopo la configurazione, assicurati di poter utilizzare act.py nel terminale e di importare i moduli ACTS in Python. Ad esempio:

act.py -h
usage: act.py [-h] -c <PATH> [--test_args Arg1 Arg2 ... ]
python3
>>> from acts.controllers import android_device
>>> device_list = android_device.get_all_instances()

Esegui senza installazione

Gli utenti possono eseguire ACTS senza installare direttamente il pacchetto. L'unico passaggio da eseguire è modificare il percorso di Python da cui eseguire l'importazione da <repo>/tools/test/connectivity/acts/framework. Prima di eseguire ACTS, esegui setup.py install_deps per installare tutte le dipendenze richieste da ACTS senza installare ACTS. Se sulla tua macchina è già installata una versione di ACTS, esegui sudo setup.py uninstall.

Per eseguire ACTS, utilizza uno dei seguenti comandi:

  • cd <repo>/tools/test/connectivity/acts/framework; acts/bin/act.py
  • export PYTHONPATH=<repo>/tools/test/connectivity/acts/framework; acts/bin/act.py

ACTS restituisce messaggi che richiedono flag -c e -tc. Per ulteriori informazioni, consulta Configurare i test ACTS.

Configurare ACTS in un ambiente virtuale

Per isolare l'installazione da altre installazioni di ACTS, devi installare ACTS in un ambiente virtuale. I passaggi seguenti presuppongono che tu abbiaacts_test.zip da aosp-main su ci.android.com o che tu abbia accesso diretto alla fonte.

  1. Ottieni ACTS.

    Le build vengono pubblicate. Per maggiori informazioni, vedi Integrazione continua di Android. Puoi estrarre i file ZIP da una build su ci.android.com. Cerca il target test_suites_x86_64.

    Il file acts_test.zip si trova nella scheda Artefatti. Per questo esempio, supponiamo che acts_test.zip sia stato scaricato in /tmp/acts_test.zip.

    Se hai accesso al codice sorgente, puoi utilizzarlo.

  2. Installa virtualenv sulla macchina.

    Se non lo hai ancora fatto, puoi installare virtualenv utilizzando:

    python3 -m pip install -U --user virtualenv
  3. Crea e attiva l'ambiente virtuale (in /tmp/my_virtualenv per questo esempio). In questo modo, i nuovi pacchetti vengono installati nella directory virtualenv.

    python3 -m virtualenv /tmp/my_virtualenv
    source /tmp/my_virtualenv/bin/activate
  4. Installa ACTS. Esegui questo comando.

    unzip /tmp/acts_test.zip -d /tmp/my_virtualenv/acts
    cd /tmp/my_virtualenv/acts/tools/test/connectivity/acts/framework/
    python3 setup.py install

    Se hai accesso diretto al codice, puoi saltare l'estrazione:

    cd /path/to/acts/framework
    python3 setup.py install
  5. Esegui ACTS ovunque ti trovi.

    act.py -c <config> ...
  6. Esci dall'ambiente virtuale al termine dell'esecuzione dei test.

    deactivate

Eseguire il flashing del dispositivo Android (facoltativo)

Se vuoi ottenere il controllo privilegiato del sistema sul dispositivo, esegui il flashing del dispositivo con una build userdebug.

Per eseguire il flashing del dispositivo, utilizza Android Flash Tool (flash.android.com/). Per maggiori dettagli, consulta la documentazione di Android Flash Tool.

Installa SL4A (facoltativo, consigliato)

Se utilizzi un dispositivo con una build userdebug, hai la possibilità di controllare i privilegi di sistema del dispositivo utilizzando SL4A. Se il test non utilizza SL4A sul dispositivo, puoi impostare il flag skip_sl4a nella configurazione di ACTS per disabilitare la funzionalità.

"AndroidDevice": [{"serial": "standardized serial number reference", "skip_sl4a": true}, ...]

Per scaricare l'APK di SL4A, segui le istruzioni riportate in Scripting Layer for Android.