Android Platformu Testi

Bu içerik, Android platformu geliştiricilerine yöneliktir. Test Android platformu üzerinde nasıl yapıldığını anlamak önce, lütfen bkz Android platformu mimarisi bir bakış için.

Sonra gibi bu bölümde size sunulan kesin teknolojiler eski defterleri Satıcı Testi Suite (VTS) ve sayısız görüntü ve codelab öğreticiler .

Ayrıca not test güvenlik özgü algılamak ve açıklarına karşı cihazlarınızı sertleşmesine mevcut mekanizmalar.

Uygulamaya, test için başlamak Test Temelleri ve yürütmek Android Test Codelab kullanarak örnekleri sağladı.

Son olarak, temel presubmit testi aracılığıyla size kullanılabilir dikkat Repo Hooks'un , linter çalıştırmak biçimlendirme kontrol ve böyle bir taahhüt yükleme gibi devam etmeden önce tetik ünitesi testleri, ki. Bu kancaların varsayılan olarak devre dışı bırakıldığını unutmayın. Bkz Repo Kancalar fazla ayrıntı için giriş.

Ne ve nasıl test edilir

Bir platform testi tipik olarak bir veya daha fazla Android sistem hizmetiyle veya Donanım Soyutlama Katmanı (HAL) katmanıyla etkileşime girer, test edilen konunun işlevlerini uygular ve test sonucunun doğruluğunu onaylar.

Bu nedenle, bir platform testi şunları yapabilir:

  1. uygulama çerçevesi aracılığıyla çerçeve API'lerini kullanma; uygulanan belirli API'ler şunları içerebilir:
    • üçüncü taraf uygulamalara yönelik genel API'ler
    • ayrıcalıklı uygulamalara yönelik gizli API'ler, yani sistem API'leri
    • özel API'ler (@gizle veya korumalı, özel paket)
  2. Android sistem hizmetlerini doğrudan ham bağlayıcı/IPC proxy'leri aracılığıyla çağırın
  3. düşük seviyeli API'ler veya IPC arabirimleri aracılığıyla doğrudan HAL'lerle etkileşime geçin

Tipleri 1 ve 2, tipik olarak yazılır enstrümantasyon testleri tip 3 genellikle yazılı ise, doğal testler kullanılarak GTEST çerçeve.

Daha fazla bilgi edinmek için uçtan uca örneklerimize bakın:

Android'de test etmenin özünde oldukları için bu araçlara aşina olun.

Uyumluluk Testi Paketi (CTS)

Android Uyumluluk Testi Suite OEM ortakları arasında Android çerçeve uygulamalarının uyumluluğu sağlamak için kullanılan testler çeşitli, bir takımdır, ve platform bültenleri arasında. Paket ayrıca enstrümantasyon testleri ve yerel testler içerir (ayrıca gtest çerçevesini kullanır).

CTS ve platform testleri birbirini dışlamaz ve işte bazı genel yönergeler:

  • bir test, çerçeve API işlevlerinin/davranışlarının doğruluğunu iddia ediyorsa ve OEM ortakları arasında uygulanması gerekiyorsa, CTS'de olmalıdır
  • bir testin platform geliştirme döngüsü sırasında gerilemeleri yakalaması amaçlanıyorsa ve yürütmek için ayrıcalıklı izin gerektirebilir ve uygulama ayrıntılarına (AOSP'de yayınlandığı gibi) bağlı olabilirse, bu yalnızca platform testleri olmalıdır.

Satıcı Test Paketi (VTS)

Satıcı Testi Suite (VTS) Otomatikleştirir HAL ve işletim sistemi çekirdek testi. Bir Android yerel sistem uygulamasını test etmek üzere VTS'yi kullanmak için bir test ortamı kurun ve ardından bir VTS planı kullanarak bir yamayı test edin.

Ticaret Federasyonu Test Altyapısı

Ticaret Federasyonu (tradefed veya TF kısaca) Android cihazlar üzerinde testler çalıştırmak için tasarlanmış sürekli bir test çerçevesidir. TF, platform ödeme işleminizde, masanızda yerel olarak işlevsel testler çalıştırabilir. TF'de bir testi çalıştırmak için gerekli iki dosya vardır, bir java test kaynağı ve bir XML yapılandırması. Bkz RebootTest.java ve reboot.xml örnekler için.

hata ayıklama

Hata ayıklama bölüm yararlı araçlar ve ayıklama izleme ve platform düzeyinde özellikler geliştirilirken yerel Android platformu kodu profilleme için ilgili komutlar özetlemektedir.