CTS testlerini çalıştırma

Trade Federation, Android cihazlarda test çalıştırmak için kullanılan sürekli bir test çerçevesidir. Uyumluluk Test Paketi'ni (CTS) çalıştırmak için Tradefed test çerçevesinin açıklamasını içeren Trade Federation'a Genel Bakış başlıklı makaleyi okuyun.

Test planı çalıştırmak için:

  1. Test edilen cihazları (DUT'lar) Android cihaz kurulumu'na göre ayarlayın.
  2. Hem Android Debug Bridge (adb) hem de Android Öğe Paketleme Aracı'nın (AAPT) son sürümlerini yüklediğinizden ve bu araçların konumlarını makinenizin sistem yoluna eklediğinizden emin olun. Bu araçları yükleme hakkında bilgi edinmek için CTS'yi ayarlama: ADB ve AAPT başlıklı makaleyi inceleyin.
  3. Yayınlanan CTS derlemelerini Linux ana makinenize indirin ve derlemeyi ana makine konumuna göre açın.
  4. En az bir cihaz bağlayın. DUT dokümanını hazırlamak için:
    • Cihazı ana ekrana ayarlamak için ana ekran düğmesine basın.
    • DUT'yi başka görevler için kullanmayın.
    • Sensör etkinliğini tetiklememek için DUT'yi sabit bir konumda tutun.
    • Cihaz kamerasını odaklanılabilen bir nesneye doğru tutun.
    • CTS çalışırken cihazdaki hiçbir tuşa basmayın. DUT'nun tuşlarına basmak veya ekranına dokunmak, çalışan testleri etkiler ve testlerin başarısız olmasına neden olabilir.
  5. CTS paketinin sıkıştırmasının açıldığı klasörden CTS konsolu cts-tradefed komut dosyasını başlatın. Ana makinenin komut satırı kabuğunda şunu çalıştırın:

    ./android-cts/tools/cts-tradefed
  6. Varsayılan test planını çalıştırın (tüm test paketlerini içerir):

    cts-tradefed > run cts
    • Test yürütme süresini iyileştirmek istiyorsanız testleri birden fazla cihaza dağıtabilirsiniz. Bölme işlemi için ana makinenin en az iki cihaz bağlaması gerekir ancak verimlilik için altı veya daha fazla cihaz kullanılması önerilir. 1'den fazla cihazı bölerken:

      • Android 9 ve sonraki sürümler için komut seçeneğini kullanın

        --shard-count number_of_shards
      • Android 8.1 ve önceki sürümlerde komut seçeneğini kullanın

        --shards number_of_shards
    • Test paketinin tamamını çalıştırmak istemiyorsanız istediğiniz CTS planını komut satırından çalıştırabilirsiniz:

      run cts --plan test_plan_name

      Test planı adını bulmak için:

      • Android 7.0 ve sonraki sürümlerde test modüllerinin listesini görmek için

        list modules
      • Android 6.0 ve önceki sürümlerde, depodaki test planlarının listesini görüntülemek için

        list plans
      • Android 6.0 ve önceki sürümlerde, depodaki test paketlerinin listesini görüntülemek için

        list packages
    • CTS sürümlerine bağlı olarak ek komut seçenekleri için konsol komutu referansına veya Tradefed konsolundaki "tümünü yardım" bölümüne bakın.

  7. Tüm test modülleri tamamlanıncaya ve son iki yeniden deneme oturumundaki test başarısızlık sayıları aynı olana kadar birden çok Yeniden Deneme oturumu çalıştırın.

    • Android 9 ve sonraki sürümler için

      run retry --retry session_number --shard-count number_of_shards
    • Android 7.0 - 8.1 için

      run cts --retry session_number --shards number_of_shards
    • CTS sürümüne bağlı olarak ek yeniden deneme komutu seçenekleri için CTS v2 Komut Konsolu'na bakın.

    • CTS yeniden denemesi için uygulama ayrıntılarını öğrenmek üzere Trade Federation Suite'i yeniden deneme başlıklı makaleyi inceleyin.

  8. Yalnızca başarısız olan parametre içeren testlerde yeniden deneme oturumu çalıştırın. Geçen parametreli testler yeniden denenmez.

    • Android 11 ve sonraki sürümlerde, run cts komutunda varsayılan olarak aşağıdaki yeniden deneme komutu seçeneği etkinleştirilir:

      run retry --retry  --new-parameterized-handling
  9. Konsolda test ilerleme durumunu ve raporlanan sonuçları görüntüleyin.

Android Test Station'ı kullanarak CTS'yi çalıştırma

Android Test Station, Android geliştiricilerinin ve test mühendislerinin standart test paketlerini çalıştırmak için bir kullanıcı arayüzü kullanmak amacıyla kullanabileceği bir test otomasyonu aracıdır. Android Compatibility Test Suite (CTS) ile çalışır.

Araç, ATS Kullanıcı Rehberi'nde herkese açık olarak sunulur ve kodu AOSP'de (multitest_transport, tradefed_cluster) açık kaynaklıdır.

Alternatif Modlar için CTS'yi Çalıştırma

CTS 10 R4 sürümü, alternatif modları veya birden fazla ekranı olan cihazlar için bir test planı ekler. run cts-foldable kullanarak alternatif modlar test planını yürütün.

Alternatif ekran modu için başarılı veya başarısız test durumlarına display_mode'teki değer eklenir (ör. testcase1[display_mode=0]).

CTS 13'te DeviceStateManager API, aşağıdaki yapılandırma seçeneğine sahip test modüllerinin katlanabilir cihazın farklı cihaz durumlarında çalıştırılmasına olanak tanır. CTS'de test yürütme işlemi, cts-foldable test planının çalıştırılmasına gerek kalmadan cihazda tanımlanan ekran katlama durumlarına göre otomatik olarak gerçekleşir.

<option name="config-descriptor:metadata" key="parameter" value="all_foldable_states" />

CTS'de çoklu cihaz testi

Android 13 ve sonraki sürümler, birden fazla cihazda test etmeyi destekler. CTS çalıştırması sırasında birden fazla cihaz gerektiren testler otomatik olarak yürütülür. CTS 13, parçalama kullanıldığında otomatik olarak tetiklenen bazı çok cihazlı testleri içerir. Test için fiziksel kurulumda ek değişiklik yapılması gerekmese de testlerin doğru şekilde çalışabilmesi için virtualenv'ün yüklenmesi gerekir. Ayrıntılar için Çoklu Cihaz Paketleri başlıklı makaleyi inceleyin.

Çoklu cihaz testleri çalıştırma

Birden fazla cihazda testi bağımsız olarak çalıştırmak için aşağıdaki kodu kullanın:

  cts-tradefed > run cts-multidevice
  

Tüm normal seçenekler desteklenir. Belirli cihazları hedeflemek için hedeflenen cihaz sayısı kadar --serial <serial1> --serial <serial2> ekleyin.

Çok cihazlı testleri otomatik olarak tetiklemek için --shard-count 2'te olduğu gibi parçalama kullanın.