Optimiser le CTS

La suite de tests de compatibilité (CTS) Android fournit des millions de tests individuels. Bien qu'il soit nécessaire d'exécuter la CTS fréquemment pendant la phase de développement logiciel, il est possible de réduire le temps nécessaire à l'exécution de ces tests.

Cette page décrit les méthodes que vous pouvez utiliser pour réduire le temps d'exécution des tests et comment optimiser les ressources matérielles dans le processus.

Partage d'appareils

Pour réduire le délai de cycle, envisagez d'exécuter la CTS sur plusieurs appareils (partage). Pour découvrir comment utiliser le partage, consultez Exécuter des tests CTS.

Station de test Android

Utilisez la station de test Android (ATS) pour exécuter des suites de tests Android standards à l'aide d'une interface utilisateur. Cet outil sert d'interface Web pour Trade Federation (TF), Il vous permet d'exécuter la CTS avec une configuration minimale sur un ensemble d'appareils de test, ainsi que d'établir une programmation pour exécuter des tests en continu.

La station de test Android est compatible avec le mode multi-hôte, qui permet d'utiliser un seul hôte de contrôleur ATS pour gérer les appareils et les tests sur plusieurs hôtes de travailleur ATS.

Exécution continue de l'émulateur

Pour exécuter la CTS en continu pendant la phase de développement, vous pouvez utiliser des appareils virtuels Android (AVD) à la place du matériel. Les régressions des échecs de test peuvent être identifiées rapidement, ce qui permet de gagner beaucoup de temps pour le tri et l'analyse des causes profondes. Vous pouvez utiliser plusieurs instances de l'émulateur pour le partage et les programmer pour qu'elles s'exécutent en continu avec la station de test Android.

drawElements Quality Program (dEQP)

Le drawElements programme de qualité (dEQP) est inclus dans la CTS Android. Appelé CtsDepqTestCases, ce programme se concentre sur la couverture des tests des graphiques Android. Ce module représente près de 80% de tous les scénarios de test de la CTS Android et 6% du temps d'exécution total.

Étant donné que les pilotes graphiques Android font partie du micrologiciel Android (BSP) et ne changent pas beaucoup au cours du développement, vous pouvez exécuter ce module de manière stratégique. Par exemple, si vous exécutez la CTS toutes les deux semaines (ou moins) pendant le développement logiciel, vous pouvez exclure ce module pendant plusieurs cycles en fonction de la programmation des mises à jour du micrologiciel.

Vous pouvez exécuter CtsDeqpTestCases séparément sur un ensemble d'appareils, puis envoyer les rapports CTS. Par exemple, sur deux hôtes différents.

Hôte 1 :

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

Hôte 2 :

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

Scénarios de test multimédia

Les scénarios de test multimédia vérifient les services multimédias tels que l'audio, la vidéo et les pilotes multimédias. Ces modules de test multimédia contribuent le plus au temps d'exécution de la CTS. Des retards peuvent se produire dans les cas suivants :

  • Téléchargement de fichiers multimédias ou lecture répétée de fichiers multimédias pendant les tests.
  • Nouvelle tentative d'exécution des scénarios de test ayant échoué.

La CTS Android contient les modules de test suivants :

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

Envisagez d'exécuter certains tests multimédias localement ou sur un serveur local. Pour en savoir plus, consultez Exécuter des tests multimédias CTS localement.

Le framework multimédia et ses pilotes (décodeurs et encodeurs) font partie du micrologiciel Android (BSP). Vous pouvez exécuter ce module de manière stratégique et l'exclure pendant plusieurs cycles, en fonction de la programmation des mises à jour du micrologiciel.