Android Açık Kaynak Projesi (AOSP) çeşitli araçlar ve test paketleri sağlar Google Analytics 4'teki Çözümler'i kullanabilirsiniz. Bu bölümünde, aşağıdaki terimlere aşina olmanız gerekir:
- Android uyumlu cihaz
- Android SDK'sını ve NDK'yı kullanarak üçüncü taraf geliştiriciler tarafından yazılan tüm üçüncü taraf uygulamalarını çalıştırabilen bir cihaz. Android uyumlu cihazlar Uyumluluk Tanımlama Belgesi (CDD) ve Uyumluluk Test Paketi (CTS). Android uyumlu cihazlar Android ekosistemine katılmaya uygundur. lisans hakkı, lisanslardan bağımsız olarak Google Mobil Hizmetleri (GMS) paketi ve Android ticari markasının kullanımı. Android kaynak kodunu herkes kullanabilir ancak Android ekosisteminin bir parçası olarak kabul edilmek için cihazın Android uyumlu olması gerekir.
- yapı
- Yerel sorun gidermeyi sağlayan, derlemeyle ilgili bir günlük.
- Uyumluluk Tanımlama Belgesi (CDD)
- Android uyumlu bir cihazın yazılım ve donanım şartlarını belirten bir doküman.
- Uyumluluk Test Paketi (CTS)
İkili program veya AOSP'deki bir kaynaktır. CTS, Google Analytics 4'teki CTS'ye entegre edilmek üzere tasarlanmış ve takip edebilirsiniz. CTS'nin amacı, uyumsuzlukları ortaya çıkarmak ve yazılımın geliştirme süreci boyunca uyumlu kalmasını sağlamaktır.
CTS ve platform testleri birlikte kullanılamaz. Aşağıda bazı genel yönergeler verilmiştir:
- Bir test, çerçeve API işlevlerinin veya davranışlarının doğruluğunu onaylıyorsa testin OEM iş ortakları genelinde uygulanması ve CTS'de olması gerekir.
- Bir testin platform geliştirme sırasında regresyonları yakalaması amaçlanıyorsa Ayrıca yürütülmesi için özel izin gerektirebilir ve uygulama ayrıntılarına (AOSP'de yayınlandığı şekliyle) değindikten sonra, testi.
- Google Mobil Hizmetleri (GMS)
Cihazlara önceden yüklenebilen Google uygulamaları ve API'leri koleksiyonu.
- GoogleTest (GTest)
C++ test ve taklit çerçevesi. GTest ikili dosyaları genellikle daha düşük düzeyli soyutlama katmanlarına erişir veya çeşitli sistem hizmetlerine karşı ham IPC gerçekleştirir. GTest için test yaklaşımı genellikle çok önemli. CTS, GTest çerçevesini içerir.
- enstrümantasyon testi
Özel bir test yürütme ortamı Hedeflenen uygulama işleminin gerçekleştirildiği
am instrument
komutu tarafından başlatılır yeniden başlatılıp temel uygulama bağlamıyla başlatıldığında ve enstrümantasyon iş parçacığı, uygulama işlemi sanal içinde başlatılır üretiliyor. CTS, araç testlerini içerir.- Logcat
Cihazın hata verdiğinde oluşan yığın izlemeleri ve uygulamanızdan
Log
sınıfıyla yazdığınız mesajlar da dahil olmak üzere sistem mesajlarının günlüğünü oluşturan bir komut satırı aracı.- logging
Bilgisayar sistemi etkinliklerini izlemek için bir günlük kullanma: olarak ayarlayabilirsiniz. Android'de oturum açmak, kullanılan standartların karmaşık bir iştir. Logcat aracında birleştirilir.
- gönderme sonrası testi
Bir yaygın çekirdek dalını oluşturuyoruz. Kısmi dal adı olarak
aosp_kernel
yazarak, mevcut sonuçları içeren çekirdek dallarının listesini görebilirsiniz. Örneğin, sonuçlarandroid-mainline
için şu adreste bulunabilir: https://ci.android.com/builds/branches/aosp_kernel-common-android-mainline/grid.- ön gönderim testi
Ortak çekirdeklere hataların girmesini önlemek için kullanılan bir testtir.
- Ticaret Federasyonu
Android cihazlarda test çalıştırmak için tasarlanmış sürekli bir test çerçevesi olan Tradefed olarak da bilinir. Örneğin, Tradefed, Compatibility Test Suite ve Vendor Test Suite testlerini çalıştırmak için kullanılır.
- Satıcı Test Paketi (VTS)
Bir dizi kapsamlı özellik, Android testi, teste dayalı geliştirme sürecini destekleme ve otomatikleştirme donanım soyutlama katmanı (HAL) ve işletim sistemi çekirdek testi.
Platform testi türleri
Platform testi genellikle Android sistem hizmetlerinden veya HAL katmanlarından bir veya daha fazlasıyla etkileşime geçer, test edilen öznenin işlevlerini çalıştırır ve test sonucunun doğruluğunu onaylar. Platform testleri:
- (Tip 1) Android çerçevesini kullanan alıştırma çerçevesi API'leri. Kullanılan belirli API'ler şunlardır:
- Üçüncü taraf uygulamalarına yönelik herkese açık API'ler
- Ayrıcalıklı uygulamalara yönelik gizli API'ler (ör. sistem API'leri veya özel API'ler (
@hide
,protected
,package private
))
- (Tür 2) Ham bağlayıcı veya IPC proxy'leri kullanarak Android sistem hizmetlerini çağırma ekleyebilirsiniz.
- (3. Tür) Düşük düzey API'ler veya IPC arayüzleri kullanarak doğrudan HAL'lerle etkileşim kurun.
1. ve 2. tür testler genellikle enstrümantasyon testleri, 3. tür testler ise genellikle GTest'lerdir.
Sırada ne var?
Daha ayrıntılı bilgi için okuyabileceğiniz dokümanların listesi aşağıda verilmiştir:
Android mimarisi hakkında bilgi sahibi değilseniz bkz. Mimariye genel bakış.
Android uyumlu bir cihaz oluşturuyorsanız Android uyumluluk programına genel bakış başlıklı makaleyi inceleyin.
Araç, işlevsel, metrik ve JAR ana makine testlerini entegre etmek için bir platforma entegre etmek için bkz. Test geliştirme iş akışını.
Cihazlarınızı güvenlik açıklarını tespit edip güvenlik açıklarına karşı güçlendirmek için Güvenlik testi başlıklı makaleyi inceleyin.
HAL ve çekirdek uygulamalarınızı test etme hakkında bilgi edinmek için Tedarikçi firma Test Paketi (VTS) ve altyapı.
Uygulama testi için şunu okuyun: Android'i test etmeyle ilgili temel bilgiler uygulamalar ve Kotlin 05.1'de Gelişmiş Android:Test Etme Temel Bilgiler her bir arama terimi için örnekler yer alır.
Depo kancaları aracılığıyla kullanabileceğiniz temel ön gönderme testi hakkında bilgi edinin. Bu kancalar; linter'ları çalıştırmak, biçimlendirmeyi kontrol etmek ve birimi tetiklemek için kullanılabilir Örneğin, devam etmeden önce test yapın (örneğin, bir kayıt yüklemek). Bu kancalar devre dışı varsayılan olarak. Daha fazla bilgi için AOSP Ön Yüklemesi bölümüne bakın Kancalar.
Günlük kaydı hakkında daha fazla bilgi edinmek için Günlük kaydını anlama başlıklı makaleyi inceleyin.
Android kodundaki hata ayıklamayı anlamak için bkz. Yerel Android platform kodunda hata ayıklayın.