GoogleTest

Platform için bir GoogleTest (GTest, bazen "yerel testler" olarak da adlandırılır) genellikle daha düşük seviyeli HAL'lere erişir veya çeşitli sistem hizmetlerine karşı ham IPC gerçekleştirir. Bu nedenle test yaklaşımı genellikle test edilen hizmetle sıkı bir şekilde bağlantılıdır.

Sürekli test altyapısıyla entegrasyon için GTest çerçevesini kullanarak GTest'lerinizi oluşturun.

Örnekler

Platform kaynağındaki GTest'in bazı örnekleri:

Adımların özeti

  1. Örnek GTest modülü kurulumunu takip edin.

  2. GTest bağımlılıklarını otomatik olarak dahil etmek için test modülü yapılandırmanızda BUILD_NATIVE_TEST oluşturma kuralını kullanın.

  3. Basit ve karmaşık seçeneklere ilişkin örnekleri takip ederek bir test konfigürasyonu yazın.

  4. Artımlı yapılar için mmm veya tam yapılar için mma ile test modülünü oluşturun:

    make hwui_unit_tests -j
    
  5. Atest'i kullanarak testi yerel olarak çalıştırın:

      atest hwui_unit_tests
    

    Ayrıca GTest'lerinize argümanlar da ekleyebilirsiniz. Aşağıdakiler özellikle yararlı argümanlardır:

    • native-test-flag GTest kabuk komutuna aktarılacak ek bayrak değerlerini belirtir.
    • native-test-timeout mikrosaniye cinsinden bir test zaman aşımı değerini belirtir.

      Aşağıdaki örnek kod bu bağımsız değişkenlerin her ikisini de kullanır:

      atest test-name -- --module-arg test-name:native-test-flag:"\"argument1 argument2\"" \
         --module-arg test-name:native-test-timeout:60000
      
  6. Testi Ticaret Federasyonu test donanımıyla gerçekleştirin:

    make tradefed-all -j
    tradefed.sh run template/local_min --template:map test=hwui_unit_tests
    
  7. Manuel olarak yükleyin ve çalıştırın:

    1. Oluşturulan test ikili dosyasını cihazınıza aktarın:

       adb push ${OUT}/data/nativetest/hwui_unit_tests/hwui_unit_tests \
       /data/nativetest/hwui_unit_tests/hwui_unit_tests
      
    2. GTest'i başlatın ve cihazdaki test ikili dosyasını çağırarak testi yürütün:

       adb shell /data/nativetest/hwui_unit_tests/hwui_unit_tests
      

      Test yürütmeyi özelleştirme hakkında daha fazla bilgi için --help parametresini test ikili dosyanıza ekleyin. Parametreler hakkında daha fazla bilgi için GTest gelişmiş kılavuzuna bakın.