Yerel Testler

Platform için yerel bir test, 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ı sıkıya bağlıdır.

Kullanarak yerel testler oluşturun GTEST çerçeve. Bu, sürekli test altyapısı ile entegrasyon için bir ön koşuldur.

Örnekler

Platform kaynağındaki bazı yerel test örnekleri:

Adımların özeti

  1. Numune doğal test modülü kurulumu bakınız: çerçeveler / baz / kütüphaneleri / hwui / test / ünite /
  2. Deney modülü configuation kullanmalıdır BUILD_NATIVE_TEST GTEST bağımlılıkları otomatik olarak dahil edilir, böylece yapım kural
  3. Bir test yapılandırması yazın. Bkz basit ve karmaşık seçenekler.
  4. Test modülü kurmak mmm veya mma , örneğin (bir artımlı veya tam yapı ise bağlıdır):

    make hwui_unit_tests -j
    
  5. Kullanım ATEST yerel testi çalıştırmak için:

    atest hwui_unit_tests
    
    1. Yerel testlerinize bağımsız değişkenler de ekleyebilirsiniz. Bazı özellikle yararlı bayrakları native-test-flag yerli testin kabuk komutu ve aktarmak üzere ek bayrak değerleri belirtir, native-test-timeout Eğer mikrosaniye bir test zaman aşımı değerini belirlemenizi sağlar.

      atest test-name -- --module-arg test-name:native-test-flag:"\"argument1 argument2\"" \
      --module-arg test-name:native-test-timeout:60000
      
  6. Testi Trade Federation test koşum takımıyla çalıştırın:

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

    1. Oluşturulan test ikili dosyasını cihaza itin:

      adb push ${OUT}/data/nativetest/hwui_unit_tests/hwui_unit_tests \
        /data/nativetest/hwui_unit_tests/hwui_unit_tests
      
    2. Cihazda test ikili dosyasını çağırarak testi yürütün:

      adb shell /data/nativetest/hwui_unit_tests/hwui_unit_tests
      

    Bu, yerel testi başlatır. Ayrıca ekleyebilir --help özelleştirme testi yürütme farklı yollarını daha fazla bilgi edinmek için test ikili parametre. Son olarak, bkz GTEST gelişmiş rehber daha parametreleri ve bunların kullanımı için.