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ı sıkıya bağlıdır.
Sürekli test altyapısıyla entegre olmak için GTest çerçevesini kullanarak GTest'lerinizi oluşturun.
Örnekler
İşte platform kaynağındaki bazı GTest örnekleri:
Adımların özeti
- Örnek GTest modül kurulumunu izleyin.
- GTest bağımlılıklarını otomatik olarak dahil etmek için test modülü yapılandırmanızda
BUILD_NATIVE_TEST
derleme kuralını kullanın. - Basit ve karmaşık seçeneklere ilişkin örnekleri izleyerek bir test yapılandırması yazın.
Artımlı yapılar için
mmm
veya tam yapılar içinmma
ile test modülünü oluşturun:make hwui_unit_tests -j
Atest kullanarak testi yerel olarak çalıştırın:
atest hwui_unit_tests
Ayrıca GTest'lerinize argümanlar ekleyebilirsiniz. Aşağıdakiler özellikle yararlı argümanlardır: * native-test-flag
, GTest kabuk komutuna iletilecek 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:
<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>
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
Manuel olarak kurun ve çalıştırın:
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
GTest'i başlatın ve test ikili dosyasını cihazda çalıştı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, test ikili dosyanıza
--help
parametresini ekleyin. Parametreler hakkında daha fazla bilgi için GTest gelişmiş kılavuzuna bakın.