CTS otomatik testini ayarlama

Otomatik CTS testlerini çalıştırmadan önce fiziksel ortamınızı hazırlayın, iş istasyonunuzu kurun ve test ettiğiniz cihazı yapılandırın.

Fiziksel ortamı ayarlama

Belirli CTS testleri için DUT'un yakınına harici cihazlar kurulması gerekir. Fiziksel ortamınızı ayarlamak için:

  1. (İsteğe bağlı) DUT'niz Bluetooth LE'yi destekliyorsa Bluetooth LE tarama testi için DUT'nin 5 metre yakınına en az üç Bluetooth LE işaretçisi yerleştirin. Buna ek olarak:

    • Beacon'ların yapılandırılması veya belirli bir şey yayması gerekmez.
    • Beacon'lar iBeacon, Eddystone veya BLE beacon'ları simüle eden cihazlar da dahil olmak üzere her türden olabilir.
  2. Telefonu, duvar veya tavan gibi bir sahnenin önüne, DUT'un minimum odak mesafesine eşit bir mesafede yerleştirin. Buna ek olarak:

    • Sahne, test edilen sensörlerin CONTROL_AE_TARGET_FPS_RANGE bölümünde belirtildiği gibi saniyedeki maksimum yapılandırılmış hedef kare sayısına (FPS) ulaşmasına ve bu sayıda kalmasına izin verecek kadar aydınlık olmalıdır.
    • Bu kurulum, listelenen cihazlar üzerinde test tekrarlanıp performans tek tek ölçülürken getCameraIdList tarafından bildirilen tüm kamera sensörleri için geçerlidir.
    • DUT, USB web kameraları gibi harici kameraları destekliyorsa CTS'yi çalıştırırken harici bir kamera takın. Aksi takdirde CTS testleri başarısız olur.
  3. (İsteğe bağlı) DUT'niz küresel konumlandırma sistemini (GPS) veya başka bir küresel navigasyon uydu sistemini (GNSS) destekliyorsa DUT'a alım ve konum hesaplaması için uygun bir sinyal seviyesinde GNSS sinyali sağlayın. Buna ek olarak:

    • GPS, ICD-GPS-200C ile uyumlu olmalıdır.
    • GNSS sinyali, uydu simülatörü veya dış mekan sinyallerinin tekrarlayıcısı da dahil olmak üzere herhangi bir türde olabilir.
    • DUT'u, uydudan yeterli GNSS sinyalini doğrudan alabilmesi için pencerenin yakınına yerleştirebilirsiniz.
  4. Kablosuz ağınızın IPv4 ve IPv6'yı desteklediğinden, IPv4 ve IPv6 için DNS ile internet bağlantısı olduğundan, IP çoklu yayını desteklediğinden ve test edilen cihazı izole edilmiş bir istemci olarak değerlendirebildiğinden emin olun.

    Yerel bir IPv6 ağına, IPv6 operatör ağına veya IPv6 testlerini geçmek için VPN'ye erişiminiz yoksa kablosuz ağ erişim noktası ve IPv6 tüneli kullanın.

  5. DUT'un kablosuz arayüzünde UP, BROADCAST ve MULTICAST işaretlerinin ayarlandığından emin olun.

  6. Kablosuz arayüzüne IPv4 ve IPv6 adreslerinin atandığından emin olun. Kablosuz arayüz özelliklerini kontrol etmek için adb shell ifconfig komutunu çalıştırın.

  7. (İsteğe bağlı) Test cihazınız Wi-Fi STA veya STA eşzamanlılığını destekliyorsa en az iki Wi-Fi ağı kurun. Bu kablosuz ağlar, farklı bantlarda farklı SSID'lerle veya aynı SSID'de farklı BSSID'lerle çalışmalıdır.

  8. (İsteğe bağlı) DUT'niz Wi-Fi gidiş dönüş süresini (RTT) destekliyorsa Wi-Fi RTT'yi destekleyen bir cihaz kurun:

    1. Wi-Fi RTT cihazını DUT'un 12 metre yakınına yerleştirin.
    2. Kablosuz RTT cihazını açın.

    Kablosuz RTT'yi destekleyen iki cihaz önerimiz: - Google Wifi - Compulab'ın fitlet2 erişim noktası (5 GHz'de 40 MHz bant genişliğine ayarlanmış).

Masaüstü makinenizi kurma

CTS otomatik testlerini çalıştırmadan önce masaüstü makinenizin donanım ve işletim sistemi gereksinimlerini karşıladığından ve aşağıdaki bölümlerde açıklandığı gibi uygun yazılımın yüklendiğinden emin olun.

Meet Donanım gereksinimleri

CTS masaüstü makineniz şu donanım gereksinimlerini karşılamalı veya aşmalıdır:

  • 64 bit x86 sistemi

  • CTS test senaryolarının sayısındaki artışı ve Tradefed'deki Java yığın alanı rezervasyonundaki artışı karşılamak için en az 256 GB boş disk alanı

  • En az 32 GB RAM

İşletim sistemi gereksinimlerini karşılayın

  • Geliştirme makinenizde GNU C Library (glibc) 2.17 veya sonraki bir sürümün yüklü olduğu 64 bit Linux dağıtımı çalıştırılmalıdır.

  • CTS'nin yolu doğru şekilde çözebilmesi için İşletim Sistemi dili "İngilizce" olarak ayarlanmalıdır.

Masaüstü yazılımını yükleme

CTS için uygun masaüstü yazılımını yüklemek üzere:

  1. FFmpeg paketinin 5.1.3 veya sonraki bir sürümünü yükleyin.

  2. Android Debug Bridge (adb) ve Android Asset Packaging Tool (AAPT2)'nin en son sürümlerini yükleyin ve bu araçların konumunu makinenizin sistem yoluna ekleyin:

    1. sdkmanager komut satırı aracını yüklemek için SDK Manager dokümanının başındaki talimatları uygulayın. Komut satırı araçlarını indirme bağlantısı, Android Studio indirme sayfasının alt kısmındaki Yalnızca komut satırı araçları bölümünde yer alır.
    2. Sistem yolunuzu, yeni yüklenen sdkmanager konumunu içerecek şekilde güncelleyin.
    3. sdkmanager kullanarak en son platform-tools ve build-tools paketlerini yükleyin. Bu paketler adb ve AAPT2'yi içerir. Paketleri yükleme hakkında bilgi edinmek için Paketleri yükleme başlıklı makaleye göz atın.
    4. Yeni yüklenen adb ve AAPT2 araçlarının konumunu içerecek şekilde yolunuzu güncelleyin.
    5. adb ve AAPT2'nin yolunuzda olduğunu doğrulayın.
  3. Java Development Kit (JDK)'nin uygun sürümünü yükleyin:

  4. (isteğe bağlı) Android 13 ve 14 için virtualenv'i yükleyin. Çok cihazlı testler için virtualenv aracı gereklidir.

  5. Python'un yüklendiğinden emin olmak için python3 yazın. Python'un düzgün şekilde yüklendiğini belirten Python sürümü ve tarihi görünmelidir.

  6. Cihazlarınızın Android sürümüyle ve cihazlarınızın desteklediği tüm uygulama ikili arayüzleriyle (ABI'ler) eşleşen CTS paketlerini Compatibility Test Suite indirmeleri sayfasından indirip açın.

  7. CTS medya dosyalarının son sürümünü indirip açın. Medya dosyaları, Blender Foundation'ın Creative Commons Atıf 3.0 lisansı kapsamında telif hakkı sahibi olduğu Big Buck Bunny'den alınan video klipleri içerir.

  8. (İsteğe bağlı) CTS'yi ilk kez çalıştırdığınızda, Mainline ile ilgili bazı CTS dosyaları dinamik olarak indirilir. Ağ hızınıza bağlı olarak bu indirme, CTS çalışma süresine 10 dakika veya daha fazla süre ekler.

    CTS'nin ek çalışma süresini önlemek için CTS'yi çalıştırmadan önce Mainline ile ilgili CTS dosyalarını indirebilirsiniz. Mainline ile ilgili CTS dosyalarını indirme hakkında bilgi edinmek için Mainline ile ilgili CTS dosyalarını indirme başlıklı makaleyi inceleyin.

DUT'u hazırlama

Masaüstü makinenizi kurduktan sonra DUT'u kurup yapılandırmanız gerekir.

DUT'u kurma

DUT'u ayarlamak için:

  1. DUT'un, Codenames, Tags, and Build Numbers'daki bilinen uyumlu kullanıcı derlemesine (Android 4.0 veya sonraki sürümler) dayalı bir sistem görüntüsü çalıştırdığından ve user derleme varyantını kullandığından emin olun. Derleme varyantları hakkında daha fazla bilgi için Hedef seçme başlıklı makaleyi inceleyin.

  2. DUT'ta Android 13 veya sonraki bir sürüm çalışıyorsa derlemenin, cihazın ticari olarak kullanıma sunulduğu API düzeyine ayarlanmış olduğundan emin olun.ro.product.first_api_level Bu değeri ayarlamak için device.mk dosyasında aşağıdaki değişikliği yapın:

    PRODUCT_SHIPPING_API_LEVEL := 21
    

    Belirli CTS şartları, cihazın ilk gönderildiği derlemeye bağlıdır. Örneğin, ilk olarak daha eski derlemelerle gönderilen cihazlar, daha yeni derlemelerle gönderilen cihazlar için geçerli olan sistem gereksinimlerinin dışında kalabilir. Geçerli API düzeyi değerleri için Kod Adları, Etiketler ve Derleme Numaraları başlıklı makaleyi inceleyin. ro.product.first_api_level hakkında daha fazla bilgi için Sağlayıcı API düzeyi başlıklı makaleyi inceleyin.

    Android 10 veya önceki sürümler için CTS'yi ayarlama (AOSP 10 veya önceki sürümler) başlıklı makaleyi inceleyin.

  3. Cihazınız APEX paket yönetimini destekliyorsa:

    1. Belirli Android sürümünüz ve donanım mimariniz için APEX shim paketini indirin. Shim paketleri tablosundaki soldaki iki sütunda, indirilecek paketin bağlantıları yer alır.
    2. İndirilen paketi /system/apex konumuna kopyalayın.
    3. Dosyayı com.android.apex.cts.shim.apex olarak yeniden adlandırın.
  4. Cihazınız APEX paket yönetimini desteklemiyorsa:

    1. Belirli Android sürümünüz ve donanım mimariniz için APEX ara katman paketlerini indirin. Shim paketleri tablosundaki sağdaki iki sütunda, indirilecek paketlerin bağlantıları yer alır.
    2. CtsShim.apk dosyasını /system/app/ klasörüne kopyalayın.
    3. CtsShim.apk öğesini CtsShimPrebuilt.apk olarak yeniden adlandırın.
    4. CtsShimPriv.apk dosyasını /system/priv-app/ klasörüne kopyalayın.
    5. CtsShimPriv.apk öğesini CtsShimPrivPrebuilt.apk olarak yeniden adlandırın.
  5. Cihazınız birden fazla güvenli öğe bildiriyorsa:

    1. google-cardlet.cap dosyasını indirin.
    2. İndirilen dosyayı /data/uicc/cardlets/ konumuna kopyalayın.
  6. Cihazınız birden fazla güvenli öğe bildiriyorsa örnek küçük uygulamayı DUT'un yerleşik güvenli öğesine (eSE) veya DUT tarafından kullanılan SIM karta yükleyin. Daha fazla bilgi için CTS test for Secure Element (Güvenli öğe için CTS testi) başlıklı makaleyi inceleyin.

  7. Cihazınızda yerleşik ekran yoksa cihaza bir ekran bağlayın.

  8. Cihazda hafıza kartı yuvası varsa boş bir SD kart takın. CTS'yi geçebilmesi için SDHC veya SDXC kapasiteli ultra yüksek hızlı (UHS) veri yolu destekleyen bir SD kart ya da 10 veya daha iyi hız sınıfına sahip bir kart kullanın.

  9. Cihazda SIM kart yuvaları varsa her yuvaya etkinleştirilmiş bir SIM kart takın. Cihaz SMS'i destekliyorsa her SIM kartın kendi numara alanı doldurulmalıdır. Android 12 veya daha yeni bir sürümün yüklü olduğu cihazlarda, tüm SIM kartların kısaltılmış arama numaralarını (ADN) depolama desteği olmalıdır. Telekomünikasyona özel dosya (DFTelecom) içeren GSM ve USIM kartları bu koşulu karşılar.

  10. Cihazınızda, UICC'yi hazırlama bölümünde belirtilen koşulları karşılayan CTS operatör ayrıcalıklarına sahip bir SIM kart olduğundan emin olun.

DUT'u yapılandırma

DUT'nizi CTS ile kullanılacak şekilde yapılandırmak için aşağıdaki adımları uygulayın.

DUT'ta:

  1. Cihazı fabrika verilerine sıfırlayın.

  2. Cihazın dilini İngilizce (ABD) olarak ayarlayın.

  3. Cihaz, varsayılan yazı tiplerinin özelleştirilmesini destekliyorsa varsayılan sans-serif yazı tipi ailesinin Roboto olarak ayarlandığından emin olun.

  4. Cihazda GPS, kablosuz ağ veya mobil ağ özelliği varsa konum ayarını etkinleştirin.

  5. IPv6'yı destekleyen, DUT'u yalıtılmış bir istemci olarak değerlendirebilen ve internet bağlantısı olan bir kablosuz ağa bağlanın. İzole edilmiş istemcilerle ilgili açıklama için Fiziksel ortamı ayarlama başlıklı makaleyi inceleyin.

  6. Kilit deseni veya şifre ayarlanmadığından emin olun.

  7. USB üzerinden hata ayıklamayı etkinleştirin:

    1. Ayarlar > Telefon hakkında'ya gidin ve Derleme numarası'na yedi kez dokunun. Geliştirici seçenekleri, Sistem ayarları kategorisinde görünür.

    2. USB üzerinden hata ayıklama'ya dokunun.

    Android 10 veya önceki sürümlerde USB hata ayıklamayı etkinleştirmek için CTS'yi ayarlama (AOSP 10 veya önceki sürümler) başlıklı makaleyi inceleyin.

  8. Saati 12 saatlik biçime ayarlayın.

  9. Geliştirici seçenekleri > Uyanık kal'ı etkinleştirin.

  10. USB uygulama doğrulamasını devre dışı bırakma:

    1. Geliştirici seçenekleri'ne gidin.

    2. USB'den yüklenen uygulamaları doğrula'ya dokunun.

  11. Android 13 veya sonraki sürümlerde sahte modemi etkinleştirin:

    1. Geliştirici seçenekleri'ne gidin.

    2. Sahte Modem'e izin ver'e dokunun.

    Bu ayar, belirli telefon görüşmesi testleri için gereklidir.

Masaüstü bilgisayarda:

  1. Tarayıcıyı başlatın ve başlangıç veya kurulum ekranlarını kapatın.

  2. Test edilen cihazı USB kablosuyla masaüstü makineye bağlayın.

  3. Sistem, bu bilgisayar üzerinden hata ayıklamaya izin veren bir RSA anahtarını kabul etmenizi isterse USB üzerinden hata ayıklamaya izin ver'i tıklayın.

  4. Kullanıcı tarafından erişilebilen (gizli olmayan) bir ayarı kullanarak Roboto2'yi sans-serif yazı tipi olarak ayarlayın.

  5. CTS medya dosyalarını DUT'a kopyalayın:

    1. Medya dosyalarının indirildiği ve sıkıştırılmamış hâle getirildiği yola gidin (cd).
    2. Dosya izinlerini değiştirme:

      chmod u+x copy_media.sh
      
    3. Dosyaları kopyalayın:

      • 720x480 çözünürlüğe kadar olan klipleri kopyalamak için şu komutu çalıştırın:

        ./copy_media.sh 720x480
      • Maksimum çözünürlükten emin değilseniz tüm dosyaları kopyalayın:

        ./copy_media.sh all
      • Birden fazla DUT varsa belirli bir cihazın seri seçeneğini (-s) sona ekleyin. Örneğin, 1234567 seri numaralı cihaza 720x480 çözünürlüğe kadar kopyalamak için şu komutu çalıştırın:

        ./copy_media.sh 720x480 -s 1234567

Mainline ile ilgili CTS dosyalarını indirme

Mainline ile ilgili CTS dosyalarını indirmek için:

  1. Aşağıdaki komutu çalıştırarak cihazdaki Android API düzeyini alın:

    adb shell getprop ro.build.version.sdk
    
  2. Mainline CTS dosyalarını indirmek için download_mcts.sh komut dosyasındaki talimatları uygulayın.

    İndirme işlemi, ağ hızınıza bağlı olarak en az 10 dakika sürer.

Shim paketleri

Aşağıdaki tabloda her cihaz sürümü ve mimarisi için kullanılabilen paketler listelenmiştir:

Cihaz Sürümü Paketler (APEX destekleniyorsa) Paketler (APEX desteklenmiyorsa)
ALARMI ETKİNLEŞTİR x86 ALARMI ETKİNLEŞTİR x86
Android 16 16-arm-release android16-x86-release android16-arm-CtsShim.apk

android16-arm-CtsShimPriv.apk

android16-x86-CtsShim.apk

android16-x86-CtsShimPriv.apk

Android 15 15-arm-release android15-x86-release android15-arm-CtsShim.apk

android15-arm-CtsShimPriv.apk

android15-x86-CtsShim.apk

android15-x86-CtsShimPriv.apk

Android 14 android14-arm-release android14-x86-release android14-arm-CtsShim.apk

android14-arm-CtsShimPriv.apk

android14-x86-CtsShim.apk

android14-x86-CtsShimPriv.apk

Android 13 android13-arm-release android13-x86-release android13-arm-CtsShim.apk

android13-arm-CtsShimPriv.apk

android13-x86-CtsShim.apk

android13-x86-CtsShimPriv.apk

Android 12 android12-arm-release android12-x86-release android12-arm-CtsShim.apk

android12-arm-CtsShimPriv.apk

android12-x86-CtsShim.apk

android12-x86-CtsShimPriv.apk

Android 11 android11-arm-release android11-x86-release android11-arm-CtsShim.apk

android11-arm-CtsShimPriv.apk

android11-x86-CtsShim.apk

android11-x86-CtsShimPriv.apk

Android 10 android10-release android10-arm-CtsShim.apk

android10-arm-CtsShimPriv.apk

android10-x86-CtsShim.apk

android10-x86-CtsShimPriv.apk

Android 9, O ve O-MR1 Yok Yok arm-CtsShim.apk

arm-CtsShimPriv.apk

x86-CtsShim.apk

x86-CtsShimPriv.apk

Sırada ne var?

Bu belgeyi okuduktan sonra Otomatik CTS testlerini çalıştırma bölümüne geçin.