Erweiterter ACTS-Leitfaden

Dies ist eine Anleitung zum Ausführen von Android Comms Test Suite (ACTS) -Tests.

Den Code erhalten

Die aktuellste Version von ACTS finden Sie im Gerrit-Repository des Android Open Source Project (AOSP) unter /platform/tools/test/connectivity/ .

Einzelheiten zum Synchronisieren des Codes finden Sie unter Herunterladen der Quelle und im Android Developer Codelab . Synchronisieren Sie beim Synchronisieren des Codes den Hauptzweig. Synchronisieren Sie keinen getaggten Build.

Beachten Sie, dass Sie beim Herunterladen von ACTS nicht das gesamte Android-Repository synchronisieren müssen. Um nur ACTS zu synchronisieren, führen Sie nach dem Ausführen des repo init Befehls Folgendes aus:

repo sync platform/tools/test/connectivity

ACTS finden Sie unter <repo>/tools/test/connectivity/acts/ .

Umgebungseinrichtung

Um sicherzustellen, dass ACTS über die erforderlichen Abhängigkeiten für die Einrichtung verfügt, installieren Sie die folgenden Python 3-Setup-Tools:

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

ACTS installieren

Das setup.py Skript in <repo>/tools/test/connectivity/acts/framework installiert die restlichen Abhängigkeiten und ACTS selbst.

Führen Sie für die kontinuierliche Entwicklung auf oder mit ACTS den folgenden Befehl aus:

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

Wenn Sie nur Tests ausführen möchten, führen Sie stattdessen diesen Befehl aus:

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

Überprüfen der Installation

Stellen Sie nach der Einrichtung sicher, dass Sie act.py in Ihrem Terminal verwenden und ACTS-Module in Python importieren können. Zum Beispiel:

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()

Läuft ohne Installation

Benutzer können ACTS ausführen, ohne das Paket direkt zu installieren. Der einzige Schritt, der ausgeführt werden muss, ist die Änderung des Python-Pfads für den Import aus <repo>/tools/test/connectivity/acts/framework . Führen Sie vor dem Ausführen von ACTS setup.py install_deps aus, um alle erforderlichen Abhängigkeiten von ACTS zu installieren, ohne ACTS zu installieren. Wenn sich auf Ihrem Computer eine vorhandene Version von ACTS befindet, führen Sie sudo setup.py uninstall aus.

Um ACTS auszuführen, verwenden Sie einen der folgenden Befehle:

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

ACTS gibt Nachrichten aus, die die Flags -c und -tc anfordern. Weitere Informationen finden Sie unter Konfigurieren von ACTS-Tests .

Einrichten von ACTS in einer virtuellen Umgebung

Um Ihre Installation von anderen Installationen von ACTS zu isolieren, sollten Sie ACTS in einer virtuellen Umgebung installieren. Bei den folgenden Schritten wird davon ausgegangen, dass Sie acts_test.zip von aosp-main auf ci.android.com haben oder direkten Zugriff auf die Quelle haben.

  1. Holen Sie sich ACTS.

    Builds werden veröffentlicht. Weitere Informationen finden Sie unter Android Continuous Integration . Sie können ZIP-Dateien von einem Build auf ci.android.com abrufen. Suchen Sie nach dem Ziel test_suites_x86_64 .

    Die Datei acts_test.zip befindet sich auf der Registerkarte „Artefakte“. Gehen Sie für dieses Beispiel davon aus, dass acts_test.zip nach /tmp/acts_test.zip heruntergeladen wurde.

    Wenn Sie Zugriff auf den Quellcode haben, können Sie diesen stattdessen verwenden.

  2. Installieren Sie virtualenv auf Ihrem Computer.

    Wenn Sie es noch nicht haben, können Sie virtualenv mit folgendem Befehl installieren:

    python3 -m pip install -U --user virtualenv
    
  3. Erstellen und aktivieren Sie die virtuelle Umgebung (in diesem Beispiel in /tmp/my_virtualenv ). Dadurch wird sichergestellt, dass neue Pakete im virtualenv Verzeichnis installiert werden.

    python3 -m virtualenv /tmp/my_virtualenv
    source /tmp/my_virtualenv/bin/activate
    
  4. Installieren Sie ACTS. Führen Sie den folgenden Befehl aus.

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

    Wenn Sie direkten Zugriff auf den Code haben, können Sie das Entpacken überspringen:

    cd /path/to/acts/framework
    python3 setup.py install
    
  5. Führen Sie ACTS von überall aus aus.

    act.py -c <config> ...
    
  6. Verlassen Sie die virtuelle Umgebung, wenn Sie mit der Ausführung der Tests fertig sind.

    deactivate
    

Flashen des Android-Geräts (optional)

Wenn Sie systemprivilegierte Kontrolle über das Gerät erhalten möchten, flashen Sie das Gerät mit einem userdebug Build.

Um das Gerät zu flashen, verwenden Sie das Android Flash Tool (flash.android.com/) . Weitere Einzelheiten finden Sie in der Dokumentation unter Android Flash Tool .

SL4A installieren (optional, empfohlen)

Wenn Sie ein Gerät mit einem userdebug Build verwenden, haben Sie die Möglichkeit, mithilfe von SL4A die Systemberechtigungskontrolle für Ihr Gerät zu erhalten. Wenn Ihr Test SL4A auf dem Gerät nicht verwendet, können Sie das Flag skip_sl4a in der ACTS-Konfiguration setzen, um die Funktion zu deaktivieren.

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

Um das SL4A APK zu erhalten, befolgen Sie die Anweisungen unter Scripting Layer für Android .