CTS optimieren

Die Android Compatibility Test Suite (CTS) bietet Millionen von Einzeltests. Es ist zwar notwendig, um CTS während der Softwareentwicklungsphase häufig auszuführen, können Sie die für die Durchführung dieser Tests erforderliche Zeit verkürzen.

Auf dieser Seite werden Methoden beschrieben, mit denen Sie die Ausführungszeit von Tests verkürzen und die Hardwareressourcen für den Prozess optimieren können.

Geräte gemeinsam verwenden

Um die Zykluszeit zu reduzieren, sollten Sie CTS auf mehreren Geräten ausführen (Fragmentierung). Informationen zur Verwendung der Fragmentierung finden Sie Führen Sie CTS-Tests durch.

Android Test Station

Mit der Android Test Station (ATS) können Sie über eine Benutzeroberfläche standardmäßige Android-Test-Suites ausführen. Dieses Tool dient als Weboberfläche für Handelsföderation (TF) Sie können die CTS mit minimalem Einrichtungsaufwand auch auf einer Reihe von Testgeräten ausführen. einen Zeitplan für die kontinuierliche Durchführung von Tests zu erstellen.

Die Android-Teststation unterstützt den Multi-Host-Modus, mit dem Geräte und Tests auf mehreren ATS-Worker-Hosts über einen einzigen ATS-Controller-Host verwaltet werden können.

Kontinuierliche Ausführung des Emulators

Um das CTS während der Entwicklungsphase kontinuierlich auszuführen, Virtuelle Android-Geräte (AVD) kann als Ersatz für Hardware verwendet werden. Regressionen von Testfehlern können frühzeitig erkannt werden, wodurch viel Zeit für die Einstufung und Analyse der Grundursachen gespart wird. Für das Sharding können mehrere Instanzen des Emulators verwendet werden, die so geplant werden können, dass sie kontinuierlich mit der Android-Teststation ausgeführt werden.

drawElements Quality Program (dEQP)

Das drawElements-Qualitätsprogramm (dEQP) ist in der Android CTS enthalten. Dieses Programm, das CtsDepqTestCases heißt, konzentriert sich auf die Testabdeckung von Android-Grafik. Dieses Modul macht fast 80% aller Testläufe bei Android CTS und macht 6% der gesamten Ausführungszeit aus.

Da die Android-Grafiktreiber Teil der Android-Firmware (BSP) sind und sich im Laufe der Entwicklung nicht wesentlich ändern, können Sie dieses Modul strategisch ausführen. Wenn Sie beispielsweise während der Softwareentwicklung alle zwei Wochen (oder seltener) CTS ausführen, können Sie dieses Modul basierend auf dem Firmware-Update-Zeitplan für mehrere Zyklen ausschließen.

Eine Möglichkeit besteht darin, CtsDeqpTestCases auf mehreren Geräten separat auszuführen und dann die CTS-Berichte einzureichen. Beispielsweise auf zwei verschiedenen Hosts.

Host 1:

cts-tf > run cts --max-log-size 100 --shard-count 6 -o -m CtsDeqpTestCases

Host 2:

cts-tf > run cts --max-log-size 100 --shard-count 6 -o --exclude-filter CtsDeqpTestCases

Medien-Testläufe

Mit Medientestfällen werden Multimediadienste wie Audio, Video und die Multimedia-Treiber geprüft. Diese Multimedia-Testmodule tragen am meisten zur CTS bei Ausführungszeit. Verzögerungen können in folgenden Fällen auftreten:

  • Herunterladen von Mediendateien oder wiederholte Wiedergabe von Mediendateien während der Tests
  • Fehlgeschlagene Testfälle wiederholen

Die Android CTS enthält die folgenden Testmodule:

  • CtsMediaStressTestCases
  • CtsMediaPlayerTestCases
  • CtsMediaAudioTestCases
  • CtsVideoTestCases
  • CtsMediaDecoderTestCases
  • CtsMediaCodecTestCases
  • CtsMediaV2TestCases

Sie können einige Medientests lokal oder auf einem lokalen Server ausführen. Weitere Informationen finden Sie unter CTS-Medientests lokal ausführen.

Das Multimedia-Framework und seine Treiber (Decoder und Encoder) sind Teil der Android-Firmware (BSP). Sie können dieses Modul strategisch durchführen und ausschließen, diese Module über mehrere Zyklen hinweg, basierend auf dem Zeitplan für die Firmware-Updates.