Bir Kutuda Komple Otomotiv Testleri (CATBox), otomotiv testlerini minimum yapılandırmayla kolaylaştırmak ve yürütmek için gereken çerçeveleri ve araçları sağlayan açık kaynaklı bir pakettir. CATBox ölçeklenebilir ve Android Otomotiv İşletim Sistemi (AAOS) uygulamalarınızı test etmek ve doğrulamak için kullandığınız araçlar, altyapı ve testlerle uyumludur. Sonuç olarak, pazara yüksek kaliteli ürünler sunabilirsiniz.
CATBox tasarımı ve uygulaması
CATBox test paketi, bir otomotiv hedef cihazında işlevsel ve performans testlerini yürütmek için gereken araçları, çerçeveleri ve testleri sağlar.
Aşağıdaki görüntü, bir CATBox paketinin yüksek seviyeli tasarımını göstermektedir.
Şekil 1. CATBox paketi
ticaretle beslenen
Tradefed, Android cihazlarda testleri yürütmek için kullanılan açık kaynaklı bir sürekli test çerçevesidir. Ayrıntılar için Ticaret Federasyonuna Genel Bakış'a bakın.
Otomotiv test çerçevesi
CATBox, otomotiv cihazlarında çeşitli uygulamaları test etmek için API'ler sağlayan Spectatio adlı bir Otomotiv test çerçevesine dayanmaktadır. Kullanıcı ve sistem uygulamalarıyla etkileşime giren UI testleri oluşturmak için bir dizi API sağlayan açık kaynaklı bir test çerçevesi olan UI Automator'ın üzerine inşa edilmiştir.
CATBox test paketi indirmeleri
Android 12
Android 12, kod adlı S adlı geliştirme dönüm noktasının sürümüdür. Android 12 için CATBox test paketlerini indirmek için aşağıdaki bağlantıları kullanın:
Android 11
Android 11, kod adlı R adlı geliştirme dönüm noktasının sürümüdür. Android 11 için CATBox test paketlerini indirmek için aşağıdaki bağlantıları kullanın:
CATBox oluşturun
Android AOSP kodu yerel iş istasyonunda kullanılabilir olduğunda catbox
build komutunu kullanın. CATBox paketini yerel olarak oluşturmak için:
Cihaz Hedefi'ni seçin ve aşağıdaki komutu çalıştırın:
# Select Device Target Based on Device Architecture $ lunch <target>
CATBox oluşturmak için aşağıdaki komutu çalıştırın:
# Build CATBox $ make catbox
Bu komut,
/out/host/linux-x86/catbox
dizininde daha sonra testleri çalıştırmak için kullanılabilecekandroid-catbox.zip
dosyasını oluşturur.
Ortam kurulumu
CATBox testlerini yürütmek için gereken ortam kurulumu, CTS'yi Ayarlama ile benzerdir. Ortamı kurmak için aşağıdaki görevlerin her birini tamamlayın:
- ADB ve AAPT'yi kurun.
- JDK'yı yükleyin. Ubuntu için Java Geliştirme Kitine bakın.
- Bellek sınırını artırın. Depolama gereksinimleri bölümüne bakın.
CATBox kurulumu ve yürütülmesi
Testleri Android cihazlarda çalıştırmak için Tradefed test çerçevesini kullanın. CATBox kurulumundan önce, Ticaret Federasyonuna Genel Bakış hakkında bilgi edinin.
CATBox'ı kurmak ve çalıştırmak için aşağıdaki bölümlere bakın.
Cihaz kurulumu
Bir test planı çalıştırmadan önce cihazınızı kurmak için aşağıdaki adımları tamamlayın:
Hem Android Debug Bridge (adb) hem de Android Asset Packaging Tool'un (AAPT) son sürümlerini yüklediğinizden ve bu araçların konumunu makinenizin sistem yoluna eklediğinizden emin olun. Ayrıntılar için bkz. ADB ve AAPT .
En az bir cihaz bağlayın ve Test Edilen Cihazı (DUT) aşağıdaki gibi hazırlayın:
- Otomotiv cihazını fabrika ayarlarına sıfırlamak için Ayarlar > Sistem > Seçenekleri Sıfırla > Tüm verileri sil öğesine tıklayın.
- Cihazın otomatik olarak yeniden başlamasını bekleyin.
adb'nin etkin olduğundan emin olun. Cihazın kullanılabilir olduğunu doğrulamak için aşağıdaki komutu çalıştırın:
$ adb devices
Kökü etkinleştirmek için aşağıdaki komutu çalıştırın:
# Enable Root $ adb -s DEVICE_SERIAL root
DEVICE_SERIAL
otomotiv cihazının Seri Kimliği ile değiştirin.Wi-Fi'ye bağlanın.
CATBox paketini çıkarın
Cihaz kurulumunu tamamladıktan sonra CATBox paketini açın ve çıkarılan klasöre gidin:
# Extract the CATBox Package
$ unzip android-catbox.zip
# Navigate to extracted CATBox Package
$ cd android-catbox
CATBox'ta testleri yürütün
CATBox paketindeki test planlarıyla CATBox'ı çalıştırmak için aşağıdakileri çalıştırın:
./tools/catbox-tradefed run commandAndExit TEST_PLAN_NAME --serial DEVICE_SERIAL
DEVICE_SERIAL
otomotiv cihazının Seri Kimliği ile değiştirin. Ana makineye bağlı birden fazla cihazınız varsa, bunları ayırt etmek için DEVICE_SERIAL
kullanın. TEST_PLAN_NAME
yerine çalıştırmak istediğiniz test planının adını yazın.
Kullanılabilir test planlarının tam listesini almak için aşağıdakileri çalıştırın:
./tools/catbox-tradefed list plans | grep -i catbox
Aşağıdaki tablo, türe göre mevcut test planlarını gösterir:
Test türü | İsim |
---|---|
Fonksiyonel test planları | catbox-functional-notification catbox-functional-setting catbox-functional-dial catbox-functional-system-setting catbox-functional-app-info-setting catbox-functional-network-setting catbox-functional-security-setting catbox-functional-sound-setting catbox-functional-date-time-setting catbox-functional-appgrid catbox-functional-home catbox-functional-lock-screen catbox-functional-navigation-bar catbox-functional-ux-restriction catbox-functional-bluetooth-audio |
Performans testi planları | catbox-performance-cold-app-start-up-settings catbox-performance-hot-app-start-up-settings catbox-performance-jank-settings catbox-performance-cold-app-start-up-dialer catbox-performance-hot-app-start-up-dialer catbox-performance-jank-contact-list catbox-performance-jank-notifications catbox-performance-jank-appgrid catbox-performance-cold-app-start-up-mediacenter catbox-performance-hot-app-start-up-mediacenter catbox-performance-create-and-switch-to-new-guest catbox-performance-create-and-switch-to-new-user catbox-performance-create-and-switch-to-precreated-guest catbox-performance-create-and-switch-to-precreated-user catbox-performance-switch-to-existing-user |
CATBox test sonuçları
Test sonuçları, hem işlevsel hem de performans testi yürütmeleri için android-catbox/results/latest
klasörüne kaydedilir.
- Test sonuçları için
test_result.xml
bakın. - Başarısızlık testleri ayrıntıları için, bkz.
test_result_failures_suite.html
. - Performans ölçüm sonuçları için,
report-log-files
dizinindeCatboxPerformanceTests.reportlog.json
bakın.
Günlükler, hem işlevsel hem de performans testi yürütmeleri için android-catbox/logs/latest
yolunda kaydedilir.
Çevirme, Bluetooth Ses ve Kişiler listesi çöp testleri gibi bazı testler ek cihaz kurulumu gerektirir.
arama testi
Arama testi, cihaz kurulumu ve çalışma zamanı parametreleri gerektirir. Cihazı kurmak için:
- Mobil cihazı Bluetooth aracılığıyla Otomotiv ana ünitesine bağlayın.
- Test telefonunda arama testleri yapmak için bir SIM kart bulunduğundan ve mobil ağa bağlı olduğundan emin olun.
- Arama testleri, telefonda kayıtlı varsayılan kişileri kullanır. Kişileri telefona yüklemek için contact.vcf'yi kullanın.
COMPANION_SERIAL
telefonun Seri Kimliği ile değiştirin ve aşağıdaki komutları çalıştırın:# Contacts can be loaded on the phone by pushing the contacts.vcf file on the phone and importing it in the Contacts application. OR # Importing contacts using adb. # Push contacts VCF file to phone $ adb -s COMPANION_SERIAL push <path-to-downloaded-contacts-vcf-file> /storage/emulated/0/Android/data/com.google.android.contacts/contacts.vcf # Grant Read Permissions $ adb -s COMPANION_SERIAL shell pm grant com.google.android.contacts android.permission.READ_EXTERNAL_STORAGE # Import contacts from the VCF file $ adb -s COMPANION_SERIAL shell am start-activity -W -t 'text/x-vcard' -d file:///storage/emulated/0/Android/data/com.google.android.contacts/contacts.vcf -a android.intent.action.VIEW com.google.android.contacts # Then accept the prompts on the UI to load the contacts.
Çalışma zamanı parametreleri
Arama testleri, testin yürütülmesi için küçük ve büyük telefon numaralarını kullanır. Arama testleri, arama testleri için kişi adını ve iletişim numarasını da kullanır. Bu bilgileri sağlamak için aşağıdaki parametreleri kullanın:
Parameters for Large Phone Number:
--module-arg AndroidAutomotiveDialTests:instrumentation-arg:large-phone-number:=< 10 digit phone number>
Parameters for Small Phone Number:
--module-arg AndroidAutomotiveDialTests:instrumentation-arg:small-phone-number:=< 3 digit phone number>
Parameters for Search Contact Name:
--module-arg AndroidAutomotiveDialTests:instrumentation-arg:search-contact-name:=< some contact name stored on the phone >
Parameters for Search Contact Number:
--module-arg AndroidAutomotiveDialTests:instrumentation-arg:search-contact-number:=< contact number of the name provided in the search contact name >
Bluetooth ses testi
Bluetooth ses testi için bir cihaz kurmak için:
- Telefonda YouTube Müzik uygulamasının yüklü olduğundan ve bir hesapta oturum açtığınızdan emin olun. Değilse, uygulamayı yükleyin ve bir hesapta oturum açın.
- Telefonu Bluetooth aracılığıyla manuel olarak otomotiv cihazıyla eşleştirin.
- Telefon eşleştirildiğinde, telefonda bir şarkı çalın ve ardından testi yürütmeye başlayın.
Kişi listesi çöp testi
Kişi listesi tarama testi için bir cihaz kurmak için:
- Testin istenmeyen metrikleri toplamak üzere Kişiler listesinde ilerleyebilmesi için telefonun birkaç kişisi olduğundan emin olun.
- Telefonu Bluetooth aracılığıyla manuel olarak otomotiv cihazıyla eşleştirin.
- Telefon eşleştirildiğinde, kişilere cihazdan erişilebilir.