ACTS-Leitfaden für Fortgeschrittene

In dieser Anleitung wird beschrieben, wie Sie Android Comms Test Suite (ACTS)-Tests ausführen.

Code abrufen

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

Weitere Informationen zum Synchronisieren des Codes findest du unter Quelle herunterladen und im Codelab für Android-Entwickler. Synchronisieren Sie beim Synchronisieren des Codes den Haupt-Branch. Synchronisieren Sie keinen getaggten Build.

Beim Herunterladen von ACTS müssen Sie nicht das gesamte Android-Repository synchronisieren. Wenn Sie nur ACTS synchronisieren möchten, führen Sie nach dem Ausführen des Befehls repo init Folgendes aus:

repo sync platform/tools/test/connectivity

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

Umgebung einrichten

Damit ACTS die erforderlichen Abhängigkeiten für die Einrichtung hat, müssen Sie die folgenden Python 3-Einrichtungstools installieren:

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-Script in <repo>/tools/test/connectivity/acts/framework installiert den Rest der Abhängigkeiten und ACTS selbst.

Führen Sie für eine kontinuierliche Entwicklung mit 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 -

Installation prüfen

Prüfen Sie nach der Einrichtung, ob Sie act.py in Ihrem Terminal verwenden und ACTS-Module in Python importieren können. 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()

Ohne Installation ausführen

Nutzer können ACTS ausführen, ohne das Paket direkt zu installieren. Sie müssen lediglich den Python-Pfad für den Import aus <repo>/tools/test/connectivity/acts/framework ändern. Führen Sie vor der Ausführung von ACTS setup.py install_deps aus, um alle erforderlichen Abhängigkeiten von ACTS zu installieren, ohne ACTS selbst zu installieren. Wenn auf Ihrem Computer bereits eine Version von ACTS installiert ist, führen Sie sudo setup.py uninstall aus.

Verwenden Sie einen der folgenden Befehle, um ACTS auszuführen:

  • 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, in denen -c- und -tc-Flags angefordert werden. Weitere Informationen finden Sie unter ACTS-Tests konfigurieren.

ACTS in einer virtuellen Umgebung einrichten

Um Ihre Installation von anderen ACTS-Installationen 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. ACTS erhalten

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

    Die Datei acts_test.zip befindet sich auf dem Tab „Artefakte“. Angenommen, acts_test.zip wurde auf /tmp/acts_test.zip heruntergeladen.

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

  2. Installieren Sie virtualenv auf Ihrem Computer.

    Wenn Sie virtualenv noch nicht installiert haben, können Sie es mithilfe der folgenden Methoden installieren:

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

    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 direkt auf den Code zugreifen können, können Sie das Entpacken überspringen:

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

    act.py -c <config> ...
  6. Verlassen Sie die virtuelle Umgebung, wenn Sie die Tests ausgeführt haben.

    deactivate

Android-Gerät flashen (optional)

Wenn Sie das Gerät privilegiert vom System steuern möchten, flashen Sie das Gerät mit einem userdebug-Build.

Verwenden Sie zum Flashen des Geräts das Android Flash Tool (flash.android.com/). Weitere Informationen finden Sie in der Dokumentation zum Android-Flash-Tool.

SL4A installieren (optional, empfohlen)

Wenn Sie ein Gerät mit einer userdebug-Buildversion verwenden, können Sie die Systemberechtigungen Ihres Geräts mit SL4A verwalten. Wenn in Ihrem Test SL4A auf dem Gerät nicht verwendet wird, können Sie das Flag skip_sl4a in der ACTS-Konfiguration festlegen, um die Funktion zu deaktivieren.

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

Folgen Sie der Anleitung unter Scripting Layer for Android, um das SL4A-APK zu erhalten.