GoogleTest

Ein GoogleTest (GTest, manchmal auch als „native Tests“ bezeichnet) für die Plattform greift normalerweise auf HALs auf niedrigerer Ebene zu oder führt rohe IPC gegen verschiedene Systemdienste durch. Aus diesem Grund ist der Testansatz normalerweise eng mit dem zu testenden Service gekoppelt.

Erstellen Sie Ihre GTests mit dem GTest- Framework, um sie in die kontinuierliche Testinfrastruktur zu integrieren.

Beispiele

Hier sind einige Beispiele für GTest in der Plattformquelle:

Zusammenfassung der Schritte

  1. Folgen Sie dem Beispiel für die Einrichtung des GTest-Moduls .

  2. Um GTest-Abhängigkeiten automatisch einzuschließen, verwenden Sie die Erstellungsregel BUILD_NATIVE_TEST in Ihrer Testmodulkonfiguration.

  3. Schreiben Sie eine Testkonfiguration gemäß den Beispielen für einfache und komplexe Optionen.

  4. Erstellen Sie das Testmodul mit mmm für inkrementelle Builds oder mma für vollständige Builds:

    make hwui_unit_tests -j
    
  5. Führen Sie den Test lokal mit Atest aus:

      atest hwui_unit_tests
    

    Sie können Ihren GTests auch Argumente hinzufügen. Folgende Argumente sind besonders hilfreich:

    • native-test-flag gibt zusätzliche Flag-Werte an, die an den GTest-Shell-Befehl übergeben werden.
    • native-test-timeout gibt einen Test-Timeout-Wert in Mikrosekunden an.

      Der folgende Beispielcode verwendet diese beiden Argumente:

      atest test-name -- --module-arg test-name:native-test-flag:"\"argument1 argument2\"" \
         --module-arg test-name:native-test-timeout:60000
      
  6. Führen Sie den Test mit dem Trade Federation-Testrahmen durch:

    make tradefed-all -j
    tradefed.sh run template/local_min --template:map test=hwui_unit_tests
    
  7. Manuell installieren und ausführen:

    1. Pushen Sie die generierte Test-Binärdatei auf Ihr Gerät:

       adb push ${OUT}/data/nativetest/hwui_unit_tests/hwui_unit_tests \
       /data/nativetest/hwui_unit_tests/hwui_unit_tests
      
    2. Starten Sie GTest und führen Sie den Test aus, indem Sie die Test-Binärdatei auf dem Gerät aufrufen:

       adb shell /data/nativetest/hwui_unit_tests/hwui_unit_tests
      

      Um weitere Informationen zum Anpassen der Testausführung zu erhalten, fügen Sie Ihrer Testbinärdatei den Parameter --help hinzu. Weitere Informationen zu Parametern finden Sie im erweiterten GTest-Handbuch .