CTS-V testlerini çalıştırma

Android Compatibility Test Suite Verifier (CTS Verifier), Compatibility Test Suite'i (CTS) tamamlar. CTS, otomatikleştirilebilen API'leri ve işlevleri kontrol ederken CTS Verifier, ses kalitesi, dokunmatik ekran, ivmeölçer ve kamera gibi manuel giriş veya konumlandırma olmadan sabit bir cihazda test edilemeyen API'ler ve işlevler için testler sağlar.

Şartlar

CTS Verifier'ı çalıştırmadan önce aşağıdaki ekipmanlara sahip olduğunuzdan emin olun:

  • CTS'yi geçerek Android API uyumluluğu doğrulanmış Android destekli cihaz. Bu, test edilen cihazdır (DUT).
  • USB 2.0 uyumlu bağlantı noktasına sahip Linux bilgisayar. DUT'a yapılan tüm bağlantılar bu bağlantı noktası üzerinden yapılır.
  • Bluetooth, Kablosuz Doğrudan Bağlantı, Wi-Fi Aware, UWB (DUT, UWB'yi destekliyorsa) ve NFC ana kart emülasyonu (HCE) uygulamasıyla uyumlu olduğu bilinen ikinci bir Android destekli cihaz.
  • Erişim noktası adı ve şifresiyle yapılandırılmış bir kablosuz yönlendirici. Yönlendirici, kapatılmadan internet bağlantısını kesebilmelidir.

Ayrıca UWB, Wi-Fi NAN ve Bluetooth RSSI için mesafe (yakınlık) ölçme testlerinde gerekli olan tripodları, cihaz tutucuları ve önceden ölçülmüş mesafeleri de hazırladığınızdan emin olun. Ayrıntılar için Varoluş kalibrasyonu bölümüne bakın.

NFC testleri için UICC koşulları

CTS Verifier'da aşağıdaki NFC test senaryoları bulunur:

  • Saha dışı (0x54'ten gelen işlem verilerini kullanır)
  • Seçimi kaldır (0x52 kimlikli işlem verilerini kullanır)
  • HCI komutu (0025000000) (0x02'deki işlem verilerini kullanır)

İşlem etkinliği testleri için iki cihaz gerekir. Bu cihazlardan birinde aşağıdaki erişim kurallarına sahip SecureElement UICC olmalıdır:

  • CtsVerifier APK karması: 61:ED:37:7E:85:D3:86:A8:DF:EE:6B:86:4B:D8:5B:0B:FA:A5:AF:81
  • NFC etkinliğine erişim için yetkili uygulama tanımlayıcısı (AID): 0xA000000476416E64726F696443545341

Emülatör tarafında, işlem etkinliğinin ilgili etkinliği ön plana çıkarmasını bekliyoruz.

Kurulum

Android 17, varsayılan tarayıcı rolünü vermek için ek bir CTS-V kurulum adımı gerektirir.

Test cihazının sistem gezinme modunu aşağıdaki gibi üç düğmeli moda değiştirin:

  1. Ayarlar'ı açın.
  2. Sistem > Etkileşim > Gezinme modu'na gidin.
  3. Düğme tabanlı bir gezinme modu seçin. Mümkünse üç düğmeli mod tercih edilir.

CTS Verifier test ortamını ayarlamak için:

  1. Linux bilgisayarda:

    1. CTS Verifier'ı yüklemeden önce, SDK dışı arayüzlere erişime izin vermek için aşağıdaki komutu çalıştırın:
    adb shell settings put global hidden_api_policy 1
    
    1. Android Studio'yu yükleyin.

    2. Test edilecek Android sürümü için CTS Verifier APK'sını indirin.

  2. Test edilen cihazı Linux bilgisayara bağlayın.

  3. Linux bilgisayardaki bir terminalden DUT'a CtsVerifier.apk uygulamasını yükleyin:

    adb install -r -g CtsVerifier.apk
    
  4. Android 10 ve sonraki sürümlerde, uygulamaya rapor oluşturma izni vermek için aşağıdaki komutu çalıştırın:

    adb shell appops set com.android.cts.verifier android:read_device_identifiers allow
    
  5. Android 11 ve sonraki sürümlerde, raporların cihazın harici üst düzey dizini altındaki kullanıcı tanımlı bir dizine kaydedilmesine izin vermek için aşağıdaki komutu çalıştırın:

    adb shell appops set com.android.cts.verifier MANAGE_EXTERNAL_STORAGE 0
    
  6. Android 13 ve sonraki sürümlerde, CTS Verifier için test API'sine erişime izin vermek üzere aşağıdaki komutu çalıştırın:

    adb shell am compat enable ALLOW_TEST_API_ACCESS com.android.cts.verifier
    
  7. Android 14 ve sonraki sürümlerde, uygulamaya ekranı açma izni vermek için aşağıdaki komutu çalıştırın:

    adb shell appops set com.android.cts.verifier TURN_SCREEN_ON 0
    
  8. Android 17 ve sonraki sürümlerde, CTS Doğrulayıcı'ya varsayılan tarayıcı rolünü vermek için aşağıdaki komutu çalıştırın:

    adb shell 'cmd role add-role-holder --user $(am get-current-user) android.app.role.BROWSER com.android.cts.verifier'
    
  9. Test edilen cihazda sistem tarihi ve saatinin doğru ayarlandığını doğrulayın.

CTS Doğrulayıcı'yı çalıştırma

DUT'ta CTS Doğrulayıcı simgesine dokunarak CTS Doğrulayıcı uygulamasını başlatın.

Başlatıcıdaki CTS Doğrulayıcı simgesi

Şekil 1. CTS Doğrulayıcı simgesi.

Uygulamada, manuel doğrulama için kullanılabilen çeşitli test kümeleri gösterilir.

CTS Doğrulayıcı test menüsü

Şekil 2. CTS Doğrulayıcı test menüsü.

Her testin ekranın alt kısmında bir dizi ortak öğe bulunur.

Akış video kalitesi doğrulayıcısı

Şekil 3. Yaygın test öğelerinin vurgulandığı test ekranı.

  • Geçti (✓). DUT, Bilgi talimatlarına göre test şartlarını karşılıyorsa bu seçeneğe dokunun.
  • Bilgi (?). Test talimatlarını görüntülemek için dokunun. Ayrıca, bir test ilk kez açıldığında otomatik olarak görünür.
  • Başarısız (!): DUT, Bilgi talimatlarına göre test koşullarını karşılamıyorsa dokunun.

USB aksesuar modu gibi bazı testler için aşağıdaki bölümlerde ayrıntılı olarak açıklanan ek test kurulumu ve talimatlar gerekir.

8.0 ve sonraki sürümlerde USB aksesuar modunu test etme

CTS Doğrulayıcı USB aksesuarı testi

Şekil 4. 8.0 ve sonraki sürümlerde USB aksesuarı test prosedürü

CTS Doğrulayıcı USB aksesuarı testi

Şekil 5. 8.0 ve sonraki sürümlerde USB aksesuar modu test ediliyor.

7.x ve önceki sürümlerde USB aksesuar modunu test etme

USB aksesuarı testi, USB masaüstü makinesi (ana makine) programını çalıştırmak için Linux bilgisayar gerektirir.

  1. Test edilen cihazı Linux bilgisayara bağlayın.
  2. Bilgisayarda, CTS Verifier paketindeki cts-usb-accessory programını çalıştırın:

    ./cts-usb-accessory
    
  3. DUT'ta bir iletişim kutusunun görünmesini bekleyin, ardından Tamam'a dokunun.

    CTS Doğrulayıcı USB aksesuarı testi

    Şekil 6. USB aksesuarı testi

  4. DUT'taki CTS Doğrulayıcı uygulamasında USB Aksesuar Testi'ne gidin.

  5. Bilgisayarda konsoldan gelen çıkışı inceleyin. Örnek çıkış:

    CTS USB Accessory Tester
    Found possible Android device (413c:2106) - attempting to switch to accessory
    mode...
    Failed to read protocol versionfigure3
    Found Android device in accessory mode (18d1:2d01)...
    [RECV] Message from Android device #0
    [SENT] Message from Android accessory #0
    [RECV] Message from Android device #1
    [SENT] Message from Android accessory #1
    [RECV] Message from Android device #2
    [SENT] Message from Android accessory #2
    [RECV] Message from Android device #3
    [SENT] Message from Android accessory #3
    [RECV] Message from Android device #4
    [SENT] Message from Android accessory #4
    [RECV] Message from Android device #5
    [SENT] Message from Android accessory #5
    [RECV] Message from Android device #6
    [SENT] Message from Android accessory #6
    [RECV] Message from Android device #7
    [SENT] Message from Android accessory #7
    [RECV] Message from Android device #8
    [SENT] Message from Android accessory #8
    [RECV] Message from Android device #9
    [SENT] Message from Android accessory #9
    [RECV] Message from Android device #10
    [SENT] Message from Android accessory #10
    

Alternatif modlar için CTS Doğrulayıcı'yı çalıştırma

CTS 10 R6 ve CTS 11 R2 sürümlerinden itibaren CTS Verifier, alternatif modlara sahip cihazlar veya birden fazla ekran moduna sahip cihazlar için gerekli testleri destekler.

CTS Verifier'daki ana liste görünümünün üst kısmında, kullanıcıların açılmış ve katlanmış ekran modu arasında geçiş yapmasını sağlayan bir düğme gösterilir. CTS Verifier, seçilen ekran modu için gerekli testleri gösterir. CTS Verifier'da alternatif modları çalıştırmak için düğmeyi uygun ekran moduna getirip gösterilen test listesini çalıştırmanız gerekir.

CTS-V açma/kapatma anahtarı

Şekil 7. CTS Doğrulayıcı açma/kapatma anahtarı.

Katlanmış testlerin sonuçları, katlanmamış testlerle aynı raporda kaydedilir. Test setinin hangi test sonucundan geldiğini belirlemek için katlanmış moddaki her test adına bir sonek eklenir.

<Test result="fail" name="com.android.cts.verifier.deskclock.DeskClockTestsActivity[folded]">
  <RunHistory subtest="CREATE_ALARM[folded]">
    <Run start="1594176663973" end="1594176665841" isAutomated="false" />
  </RunHistory>
</Test>

Sonuçları dışa aktarma

Tüm testler tamamlandıktan sonra sonuçları rapor olarak kaydedebilir ve bilgisayara indirebilirsiniz. Rapor adlarına, DUT sistem saatine göre otomatik olarak zaman damgası eklenir.

  1. Test sonuçlarınızı kaydetmek için test kategorileri listesinin üst kısmındaki kaydetme (disk) simgesine dokunun.

  2. Kayıtlı raporun yolunu gösteren bir iletişim kutusunun (örneğin, /sdcard/verifierReports/ctsVerifierReport-date-time.zip) görünmesini bekleyin, ardından yolu kaydedin.

  3. Test edilen cihazı Linux bilgisayara bağlayın.

  4. Linux bilgisayardaki Android SDK yüklemesinden, adb shell content read veya adb pull CTSVerifierReportPath kullanarak bağlı cihazdan raporları indirin.

    • Android 7.x ve sonraki sürümlerde, aşağıdaki komutu kullanarak tüm raporları indirin:

      adb pull /sdcard/verifierReports
      
    • Android 6.0 ve önceki sürümlerde, aşağıdaki komutu kullanarak tüm raporları indirin:

      adb pull /mnt/sdcard/ctsVerifierReports/
      
    • Android 10 ve sonraki sürümlerde, Automotive'i ve ikincil kullanıcı olarak çalışan cihazları uygularken aşağıdaki komutu kullanarak en son raporu indirin:

      adb shell content read --user <var>CURRENT_USER</var> --uri content://com.android.cts.verifier.testresultsprovider/reports/latest > report.zip
      

      Bağlı cihazda bulunan tüm raporları listelemek için:

        adb shell content query --user CURRENT_USER --uri content://com.android.cts.verifier.testresultsprovider/reports
        ```
      
      To download a report from the list, you can specify the Row ID or
      filename. For example:
      
      ```shell
        adb shell content read --user CURRENT_USER --uri content://com.android.cts.verifier.testresultsprovider/reports/0 > report.zip
        ```
      
      ```shell
        adb shell content read --user CURRENT_USER --uri content://com.android.cts.verifier.testresultsprovider/reports ctsVerifierReport-date-time.zip > report.zip
        ```
      
  5. Geçti veya kaldı sonuçlarını temizlemek için CTS Verifier uygulamasında sonuçları seçip Menü > Temizle'yi seçin.