GoogleTest

Un GoogleTest (GTest, parfois appelé "tests natifs") pour la plate-forme accède généralement aux HAL de niveau inférieur ou effectue un IPC brut contre divers services système. Pour cette raison, l'approche de test est généralement étroitement liée au service testé.

Pour intégrer l'infrastructure de test continu, créez vos GTests à l'aide du framework GTest .

Exemples

Voici quelques exemples de GTest dans la source de la plate-forme :

Résumé des étapes

  1. Suivez l' exemple de configuration du module GTest .
  2. Pour inclure automatiquement les dépendances GTest, utilisez la règle de génération BUILD_NATIVE_TEST dans la configuration de votre module de test.
  3. Rédigez une configuration de test en suivant les exemples d'options simples et complexes .
  4. Compilez le module de test avec mmm pour les compilations incrémentielles ou mma pour les compilations complètes :

    make hwui_unit_tests -j
    
  5. 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 :

   <pre class="devsite-terminal devsite-click-to-copy">
   atest <var>test-name</var> -- --module-arg <var>test-name</var>:native-test-flag:"\"<var>argument1</var> <var>argument2</var>\"" \
   --module-arg <var>test-name</var>:native-test-timeout:60000
   </pre>
  1. Exécutez le test avec le harnais de test Trade Federation :

    make tradefed-all -j
    tradefed.sh run template/local_min --template:map test=hwui_unit_tests
    
  2. Installez et exécutez manuellement :

    1. Poussez le fichier 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
      
    2. Lancez GTest et exécutez le test en invoquant 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 .