Un GoogleTest (GTest, également parfois appelé « tests natifs ») pour la plate-forme accède généralement aux HAL de niveau inférieur ou exécute un IPC brut sur divers services système. Pour cette raison, l’approche de test est généralement étroitement associée au service testé.
Pour intégrer l'infrastructure de tests continus, créez vos GTests à l'aide du framework GTest .
Exemples
Voici quelques exemples de GTest dans la source de la plateforme :
Résumé des étapes
Suivez l' exemple de configuration du module GTest .
Pour inclure automatiquement les dépendances GTest, utilisez la règle de build
BUILD_NATIVE_TEST
dans la configuration de votre module de test.Écrivez une configuration de test, en suivant les exemples d'options simples et complexes .
Construisez le module de test avec
mmm
pour les builds incrémentiels, oumma
pour les builds complets :make hwui_unit_tests -j
Exécutez le test localement en utilisant Atest :
atest hwui_unit_tests
Vous pouvez également ajouter des arguments à vos GTests. Les arguments suivants sont particulièrement utiles :
-
native-test-flag
spécifie des valeurs d'indicateur supplémentaires à transmettre à la commande shell GTest. native-test-timeout
spécifie une valeur de délai d'attente de test en microsecondes.L'exemple de code suivant utilise ces deux arguments :
atest test-name -- --module-arg test-name:native-test-flag:"\"argument1 argument2\"" \ --module-arg test-name:native-test-timeout:60000
-
Exécutez le test avec le harnais de test de la Trade Federation :
make tradefed-all -j tradefed.sh run template/local_min --template:map test=hwui_unit_tests
Installez et exécutez manuellement :
Transférez le binaire de test généré sur votre appareil :
adb push ${OUT}/data/nativetest/hwui_unit_tests/hwui_unit_tests \ /data/nativetest/hwui_unit_tests/hwui_unit_tests
Lancez GTest et exécutez le test en appelant le binaire de test sur l'appareil :
adb shell /data/nativetest/hwui_unit_tests/hwui_unit_tests
Pour plus d'informations sur la personnalisation de l'exécution des tests, ajoutez le paramètre
--help
à votre binaire de test. Pour plus d'informations sur les paramètres, reportez-vous au guide avancé GTest .