Android Test İstasyonu

Android Test Station, Android geliştiricilerinin ve test mühendislerinin , Android Uyumluluk Test Paketi (CTS) gibi standart Android test paketlerini çalıştırmak için bir kullanıcı arayüzü kullanmak üzere kullanabileceği bir test aracıdır. Bu araç, Ticaret Federasyonu (TF) için bir web arayüzü görevi görerek CTS'yi bir dizi test cihazında minimum kurulumla kolayca çalıştırmanıza ve testleri sürekli olarak çalıştırmak için bir program oluşturmanıza olanak tanır.

Android Test Station'ı kurma

Bu bölümde Android Test Station'ın nasıl kurulacağı ve kurulacağı açıklanmaktadır.

Android Test Station şu konumlardaki kaynak kodunu kullanır:

Android Test Station'ı yükleyin

Çalıştırdığınız test paketleri için tüm donanım ve yazılım gereksinimlerini takip edin.

CTS gereksinimleri source.android.com adresinde bulunur.

ATS için ek donanım gereksinimleri yoktur ancak başlangıç ​​noktası olarak CTS ana bilgisayar gereksiniminin kullanılmasını öneririz.

Android Test Station'ı kurmanın iki yolu vardır:

Kurulum programıyla kurulum

Ubuntu 20.04+ sürümünde yükleyici program, Android Test Station'ı çalıştırmak için gereken tüm programları ve kaynakları yükler ve yapılandırır.

Kurulum programını kullanmak için:

  1. Kurulum programını çalıştırın:

    curl https://storage.googleapis.com/android-mtt.appspot.com/prod/install.sh | bash
    
  2. Android Test Station CLI'nin yüklü sürümünü kontrol etmek için mtt version çalıştırın.

Manuel olarak kur

Docker'ı yükleyin
  1. Docker Community Edition'ı (CE) Linux makinenize yüklemek için talimatları izleyin.

  2. Docker'ı root olmayan bir kullanıcı olarak yönetmek için kurulum sonrası adımları izleyin.

  3. İzin değişikliklerinin etkili olması için terminal pencerenizi yeniden başlatmanız veya oturumu kapatıp tekrar oturum açmanız gerekebilir.

Python 3'ü yükleyin

Android Test Station CLI, Python'un 3.7 ila 3.10 sürümlerine göre doğrulanmıştır.

Ubuntu 16.04 veya önceki sürümleri için öncelikle aşağıdakilerden birini yaparak Python 3 deposunu ekleyin:

  • Bu komutu çalıştırın:

    sudo add-apt-repository ppa:deadsnakes/ppa
    
  • Depoyu kaynaktan oluşturun ve yükleyin.

Python 3'ü yüklemek için şu komutları çalıştırın:

sudo apt-get update
sudo apt install python3 python3-distutils

Belirli bir Python 3 sürümünü (örneğin 3.10) yüklemek için bunun yerine şu komutları çalıştırın:

sudo apt-get update
sudo apt install python3.10 python3.10-distutils

Android Test Station CLI'yi edinin

Komut satırı arayüzü (CLI) paketini buradan indirin.

Android Test Station'ı başlatın

Android Test Station'ı aşağıdaki komutla başlatın:

mtt start

Kullanıcı arayüzü ilk başlatıldığında görünmesi birkaç dakika sürebilir. CLI, bir tarayıcıdaki kullanıcı arayüzüne erişmek için bir web URL'si görüntüler. Varsayılan olarak web URL'si localhost:8000 . Gerekirse, başlatma sırasında varsayılan bağlantı noktasını --port bayrağıyla değiştirebilirsiniz.

Daha yeni bir sürüm mevcutsa mevcut sürüme güncelleyebilirsiniz. En son sürümler için Sürüm Notlarını kontrol edebilirsiniz.

Geçerli sürüme güncellemek için şunu çalıştırın:

mtt start --force_update

Uygulamayı durdurmak için şunu çalıştırın:

mtt stop

Diğer komutların listesini görüntülemek için şunu kullanın:

mtt --help

Veritabanını yedekleme ve geri yükleme

ATS veritabanını yedeklemek için uygulamayı durdurun ve geçerli veritabanını ana dizininizdeki mtt-backup.tar adlı TAR dosyasına yedekleyen aşağıdaki komutu çalıştırın:

docker run --rm --mount source=mtt-data,target=/data -v ~:/out ubuntu bash -c "cd /data && tar cvf /out/mtt-backup.tar ."

Geri yüklemek için uygulamayı başlatmadan önce aşağıdaki komutu çalıştırın:

docker run --rm --mount source=mtt-data,target=/data -v ~:/out ubuntu bash -c "cd /data && tar xvf /out/mtt-backup.tar"

Kurulum sihirbazı

Android Test Station'ı ilk kez kurup çalıştırdıktan sonra Kurulum Sihirbazı, aracı ortamınıza göre özelleştirmenize yardımcı olacak birkaç adımda sizi yönlendirir. Burada yapacağınız herhangi bir değişiklik daha sonra Ayarlar sayfasından yeniden yapılandırılabilir.

Yapılandırma yedeğini geri yükleme

Başka bir Android Test Station ana bilgisayarından yedeklenmiş bir yapılandırma dosyanız varsa, Dosya Yükle düğmesini tıklatarak o ana bilgisayardan değiştirilen tüm yapılandırmaları kopyalamak için dosyayı yükleyebilirsiniz.

Yapılandırma Yedeklemesini Geri Yükle

Şekil 1. Yapılandırma Yedeklemesini Geri Yükleme.

Varsayılan hizmet hesabını ayarlayın

Kaynaklarınıza (örneğin, Google Bulut Depolama, Google Drive) erişirken Android Test Station'ın varsayılan olarak kullandığı bir hizmet hesabı ayarlayabilirsiniz. Hizmet hesabınızın kimliğini doğrulamak için Hizmet Hesabı Anahtarını Yükle'ye tıklayın ve hizmet hesabınızın JSON anahtarı dosyasını seçin.

Hizmet Hesabını Ayarla

Şekil 2. Hizmet hesabını ayarlama.

Hizmet hesabının kimliği başarıyla doğrulandığında hesabın e-posta adresi sayfanın sağ üst köşesinde görünür. Hizmet hesabını değiştirmek için hesap adına tıklayın, mevcut varsayılan hesabı kaldırın ve yeni bir hizmet hesabı anahtarı yükleyin.

Hizmet hesabını değiştir

Şekil 3. Hizmet hesabını değiştirme.

Yapılandırma kümelerini içe aktar

Yapılandırma kümesi, ilgili cihaz eylemleri ve derleme kanalları da dahil olmak üzere test paketlerini çalıştırmak için kullanılan bir yapılandırma paketidir. Yapılandırma kümeleri belirli bir Google Cloud Storage (GCS) paketinde barındırılır. GCS derleme kanalının kimliğini Google hesabınızla doğruladıktan sonra kullanabileceğiniz tüm yapılandırma kümelerinin bir listesini görürsünüz.

Test Station ana makinenize eklemek istediğiniz yapılandırma kümelerini seçin ve Seçilenleri İçe Aktar'a tıklayın.

Yapılandırma Setlerini İçe Aktar

Şekil 4. Bir Yapılandırma Kümesini İçe Aktarma.

Wi-Fi ayarlarını dahil et

Bazı CTS testleri, cihazınızın bir Wi-Fi erişim noktasına bağlanmasını gerektirir. Wi-Fi ağınızı seçmek için WiFi SSID'sini ve isteğe bağlı WiFi PSK'yı girin.

Kablosuz bağlantı ayarları

Şekil 5. Wi-Fi ortak erişim noktası ayarları.

Kurulum Sihirbazı tamamlandıktan sonra sayfa, uygulanan yeni ayarlarla yeniden yüklenir.

Bir cihazı bağlayın

Bir cihazı test amacıyla kullanmak için USB hata ayıklamanın etkinleştirilmesi gerekir. Hata ayıklamayı etkinleştirmek için:

  1. Geliştirici seçeneklerini ve hata ayıklamayı etkinleştirme bölümündeki talimatları izleyin.

  2. Özel ADB anahtarlarıyla önceden yüklenmiş test Android yapılarını kullanmayı planlıyorsanız, özel .adb_key dosyalarını ~/.android/ dizininin altına yerleştirin.

    Dosyalar otomatik olarak yüklenir ve bu yapıları çalıştıran cihazlar için cihaz flaşlandıktan sonra USB hata ayıklamasını otomatik olarak etkinleştirmek için ADB'ye iletilir.

  3. Cihazı USB kullanarak ana makineye bağlayın.

    Cihaz, web arayüzü yenilendikten sonra bir dakika içinde Android Test İstasyonu Cihazları sekmesinde görünür. Bu sekmede cihazların durumunu da görüntüleyebilirsiniz.

    Bir Cihaz Bağlayın

    Şekil 6. Bir cihazın bağlanması.

Farklı cihaz durumları şunlardır:

  • Kullanılabilir - Cihaz bağlı ve test çalıştırmaya hazır.
  • Tahsis Edildi - Cihaz bağlı ve şu anda bir test yürütüyor. Her cihaz aynı anda yalnızca bir test çalıştırabilir, bu nedenle cihazın yeni bir test çalıştırmadan önce mevcut testini bitirmesi gerekir.

Bir test çalıştırın

Bir test seçin

Android Test Station, önceden paketlenmiş bir dizi CTS yapılandırmasıyla birlikte gelir. Bu testlerden birini çalıştırmak için Test Paketleri sekmesine gidin ve istediğiniz test için Testi çalıştır öğesine tıklayın.

Bir Test Seçin

Şekil 7. Bir testin seçilmesi.

Yeni testleri düzenlemek veya eklemek için bkz . Test ekleme .

Test çalıştırmasını yapılandırın

Bu spesifik test çalıştırması için kullanılacak parametreleri düzenleyin. Çoğu parametre, seçilen test konfigürasyonunda tanımlanan değerlerle önceden doldurulur.

Bu adım, varsayılan değerler kullanılarak tamamlanabilir ancak Maksimum Yeniden Deneme ve Komut gibi parametrelerden herhangi birini ihtiyaçlarınıza uyacak şekilde değiştirebilirsiniz.

Test Çalıştırmasını Yapılandır

Şekil 8. Bir test çalışmasının yapılandırılması.

Test çalıştırması parametreleri şunlardır:

  • Ad - Çalıştırmak istediğiniz test paketinin adı.
  • Çalıştırma Sayısı - Planlandığında bu test çalıştırmasının kaç kez yürütülmesi gerektiği. Test çalışmaları, eğer kapasite varsa paralel olarak 20'ye kadar test çalıştırması gerçekleştiren Ticaret Federasyonu kullanılarak planlanıyor.
  • Maksimum Yeniden Deneme - En az bir testin başarısız olması durumunda bir test çalışmasının maksimum yeniden deneme sayısı. Kesintili testleri gerçekleştirmek için bu genellikle tam bir CTS çalıştırması için 4-6 yeniden denemeye ayarlanır.
  • Kuyruk Zaman Aşımı - Bir test çalıştırması çok uzun süre Sırada durumunda kalırsa otomatik olarak iptal edilir. İptalden önce beklenecek süreyi burada belirtin. Varsayılan 24 saattir.
  • Komut - Test paketini çalıştırma komutu. Buraya ek komut satırı argümanları girebilirsiniz. Örneğin, CTS 8.1'de belirli bir modülü şununla çalıştırın:

    cts-suite -m ShortModuleName
    
  • Yeniden Dene Komutu - Bir test paketini yeniden denemek için kullanılan komut. Buraya ek komut satırı argümanları ekleyebilirsiniz. Örneğin, CTS 8.1'de yalnızca belirli bir modülü yeniden denemek için şunu kullanın:

    cts --retry 0 -m ShortModuleName
    

    Yeniden deneme argümanları, ilk komutta mevcut olanlardan farklı olabilir; bu nedenle, seçilen test paketi için resmi sitede desteklenen parametreleri kontrol edin.

  • Önceki Test Çalıştırması - Önceki bir test çalıştırmasını yeniden çalıştırmak istiyorsanız:

    • Yerel - Çalıştırma mevcut ana bilgisayarda başlatıldıysa test çalıştırmasının ayrıntılarını görüntülerken görülen test çalıştırması kimliğini girin.

      Yerel Önceki Test Çalıştırması

      Şekil 9. Yerel önceki test çalıştırması.

    • Uzak - Çalıştırma farklı bir ana bilgisayarda başlatıldıysa Uzak öğesini seçip, Test Sonuçları Dosyasını Yükle seçeneğine tıklayarak ve yerel depolama alanınızdan bir dosya seçerek test sonuçları dosyasını yükleyin.

      Uzaktan Önceki Test Çalıştırması

      Şekil 10. Uzaktan önceki test çalıştırması.

Cihazları seçin

Test paketini çalıştırmak üzere ayrılacak cihazları seçmek için onay kutularına tıklayın. Parça sayısı, seçilen cihaz sayısıyla eşleşecek şekilde otomatik olarak değişmelidir.

Cihazları Seçin

Şekil 11. Cihazların seçilmesi.

Cihazları, cihaz seri numaraları dışındaki niteliklere göre seçmek için "Cihaz Özellikleri"ni manuel olarak girebilirsiniz. Örneğin, ürün adı "bramble" olan 3 cihazı seçmek için aşağıdakini girin:

product:bramble;product:bramble;product:bramble

Desteklenen özellikler şunlardır:

  • build_id
  • cihaz_serisi
  • cihaz tipi
  • ana bilgisayar adı
  • ürün
  • ürün_varyantı
  • sim_state

Test çalıştırmasını yürütmek için seçilen tüm cihazların Kullanılabilir durumda olması gerekir ve test çalıştırması yürütüldüğünde hepsi Tahsis Edilmiş durumuna geçer. Bir test çalıştırması, cihazların kullanılabilir olmasını beklerken Sıraya Alındı ​​durumundadır.

Cihaz eylemleri ekle

Cihaz eylemleri, her test çalıştırmasından önce yürütülebilen komut dosyalarıdır. Flashlama ve yeniden başlatma gibi bazı cihaz eylemleri önceden yapılandırılmış olarak gelir. Yeni cihaz eylemleri oluşturmak için bkz. Yeni cihaz eylemi oluşturma .

Cihaz Eylemleri

Şekil 12. Cihaz eylemleri.

Bir test çalıştırmasına bir cihaz eylemi eklemek için Yeni eylem ekle'ye tıklayın, eklenecek eylemlerin onay kutularını seçin ve Eylem(ler) Ekle'ye tıklayın. Cihaz eylemleri sırayla gerçekleştirilir. Eylemleri sürükleyerek yeniden sıralayabilirsiniz.

Eylem Ekle

Şekil 13. Eylemleri yeniden sıralama.

Test kaynaklarını ayarlayın

Test kaynakları, bir test çalıştırmasını yürütmek için gereken dosyalardır. Örneğin, CTS'yi çalıştırmak bir android-cts*.zip dosyası gerektirir ve bir aygıtın yanıp sönmesi, derleme görüntüsünü sağlamanızı gerektirir.

Test paketi zip dosyasının indirme URL'si, varsayılan olarak iş ortaklarına verilen Google Drive bağlantıları olmalıdır. Gözat'ı tıklatarak farklı bir dosya seçebilirsiniz. Açılan pencerede bir dosya indirme bağlantısı girebilir, kimliği doğrulanmış bir derleme kanalından bir dosya kullanabilir veya yerel depolama alanından kullanmak üzere bir dosya yükleyebilirsiniz.

Test Kaynakları

Şekil 14. Test kaynakları.

Aşağıda bir web URL'sine göre bir test kaynağı seçmek için açılan pencere bulunmaktadır. İndirme URL'si bağlantısını girmeniz ve seçimi onaylamak için Seç düğmesine tıklamanız yeterlidir.

Test Kaynağı Seçici - Web URL'si

Şekil 15. Test Kaynağı Seçici - Web URL'si.

Kaynakları Google Grive'a, Google Cloud Storage'a (GCS) veya diğer kanallara yüklediyseniz ayrıca belirli kanalın sekmesine gidebilir ve oradaki kaynakları seçebilirsiniz. İşte Google Drive'dan bir kaynak seçmek için bir örnek.

Test Kaynağı Seçici - Google Drive

Şekil 16. Test Kaynağı Seçici - Google Drive.

Dosya adı alanında yalnızca dosya seçmenin yanı sıra joker karakterler de desteklenir. Belgeleri burada bulabilirsiniz.

Test Kaynağı Seçici - Joker Karakter Deseni Desteği

Şekil 17. Test Kaynağı Seçici - Joker karakter deseni desteği.

Ayrıca Android Test Station'ın yerel dosya deposundan da bir dosya seçebilirsiniz. Dosyaları bu depolama alanına yükleyebilir veya doğrudan yerel dosya ve dizinleri kullanabilirsiniz .

Test Kaynağı Seçici - Yerel Dosya Deposu

Şekil 18. Test Kaynağı Seçici - Yerel dosya deposu.

Yeniden çalıştırma yapılandırmaları ekle

Birincil çalıştırma tamamlandıktan sonra başlayacak yeniden çalıştırmaları planlayabilir ve sonuçlarını yükleyebilirsiniz ancak farklı cihaz, eylem veya kaynaklar kullanabilirsiniz.

Yeniden Çalıştırma Yapılandırmaları Ekle

Şekil 19. Yeniden Çalıştırma Yapılandırmalarını Ekleme.

Bir test çalıştırması başlatın

Test çalıştırması için gereken bilgileri girdikten sonra Test Çalıştırmasını Başlat öğesine tıklayın. Tüm bilgiler geçerliyse test çalıştırması başlar ve test çalıştırmasının ayrıntılarını ve ilerlemesini görüntüleyebileceğiniz bir sayfaya yönlendirilirsiniz.

Test Çalıştırmasını Başlat

Şekil 20. Bir test çalıştırmasının başlatılması.

Bir test planı oluşturun

Test planları, periyodik bir programa göre test çalıştırmaları oluşturmak için kullanılır. Örneğin, her gün saat 17.00'de CTS 9.0'ı çalıştırmak. Yeni bir test planı oluşturmak için Yeni bir test planı oluştur öğesine tıklayın.

Test Planı Oluşturun

Şekil 21. Test planı oluşturma.

Test planını yapılandırın

Test planının adını ve eklemek istediğiniz etiketleri girin. Daha sonra kullanılacak bir program seçin.

  • El ile - Test planı, yalnızca kullanıcı test planı liste sayfasında Test planını çalıştır seçeneğine tıkladığında test çalıştırmaları oluşturur.
  • Periyodik - Test planı, test çalıştırmalarını seçilen periyodik programa göre otomatik olarak planlar. Örneğin, her gün saat 17:00'de bir test çalıştırması planlamak.
  • Özel - Test planı, girilen cron ifadesine göre test çalıştırmalarını otomatik olarak planlar. Örneğin, her gün saat 17:00'de bir test çalıştırması planlamak için cron ifadesi 0 17 * * * şeklindedir.

Test Planını Yapılandır

Şekil 22. Bir test planının yapılandırılması.

Test paketleri ekleyin

+ Test çalıştırması yapılandırmasını ekle öğesine tıklayarak test planına göre planlanmasını istediğiniz test paketlerini ekleyin. Ad açılır menüsünden bir test paketi seçin ve Sonraki adım'a tıklayın. Ardından testi çalıştırmak istediğiniz cihazları seçin ve Yapılandırma Ekle'ye tıklayın. Her test planı için birden fazla konfigürasyon ekleyebilirsiniz.

Test Çalıştırmasını Yapılandır

Şekil 23. Bir test çalışmasının yapılandırılması.

Cihaz eylemleri ekle

Her test çalıştırmasından önce yürütülmesini istediğiniz cihaz eylemlerini ekleyin. Daha fazla ayrıntı için bkz . Cihaz eylemleri ekleme .

Cihaz Eylemleri Ekle

Şekil 24. Cihaz eylemlerini ekleme.

Test kaynaklarını ayarlayın

Test kaynaklarını test planlarına eklemek, bunları tek tek test çalıştırmalarına eklemekle aynıdır. Daha fazla ayrıntı için Test kaynaklarını ayarlama konusuna bakın.

Test Kaynaklarını Ayarlayın

Şekil 25. Test kaynaklarının ayarlanması.

Test çalıştırmalarını görüntüle

Test çalıştırması listesi

Test Çalıştırmaları sayfasında programlanmış test çalıştırmalarının listesini görüntüleyin. Bir test çalıştırması hakkında daha fazla ayrıntı görmek için Görüntüle'ye tıklayın.

Filtre çubuğuna bir dize girip Enter tuşuna basarak da listeyi filtreleyebilirsiniz. Virgülle ayırarak birden fazla filtre kullanabilirsiniz. Filtre, Status ve Created hariç, herhangi bir sütundaki tam metni içeren (alt dize eşleşmesi olmayan) tüm satırları döndürür.

Boş bir filtre tüm satırları döndürür. Şu anda boş değerleri olan satırları filtrelemenin bir yolu yok.

Test Çalıştırması Listesi

Şekil 26. Test çalıştırması listesi.

Test çalıştırması ayrıntıları

Durum, günlükler ve sonuçlar gibi bir test çalıştırmasının ayrıntılarını burada görüntüleyebilirsiniz.

Test Çalıştırması Ayrıntıları

Şekil 27. Test çalıştırması ayrıntıları.

Test çalıştırması durumu

Bir test çalıştırmasının ilerleme durumu Durum bölümünde gösterilir. İndirme ilerleme durumu, iptal nedeni veya hata mesajı gibi ilgili bir mesaj varsa bu da burada gösterilir.

Test Çalıştırması Durumu

Şekil 28. Test çalıştırması durumu.

Test çalıştırması durumları şunlardır:

  • Beklemede - Gerekli kaynaklar indiriliyor.
  • Sıraya Alındı ​​- Bir cihaz kullanılabilir olduğunda test çalıştırılmaya hazırdır.
  • Çalışıyor - Test, tahsis edilen bir cihazda çalışıyor.
  • Tamamlandı - Test tamamlandı ve sonuçları rapor edildi.
  • İptal Edildi - Test kullanıcı tarafından iptal edildi veya kullanılabilir cihazlar bulunmaya çalışılırken zaman aşımına uğradı.
  • Hata - Testin çalışmasını engelleyen bir hata oluştu.

Test çalıştırmasını iptal etme

Test çalıştırması tamamlanmadıysa, İptal'e ve ardından onay iletişim kutusunda Evet'e tıklayarak işlemi iptal edebilirsiniz. Test çalıştırmaları, sıra_zaman aşımı_saniye alanından daha uzun bir süre Sıraya Alındı ​​durumunda kalmaları durumunda da otomatik olarak iptal edilir. Çalışıyor durumundayken bir test çalıştırmasının iptal edilmesinin etkili olması birkaç dakika sürebilir.

Test Çalıştırmasını İptal Et

Şekil 29. Test çalıştırmasının iptal edilmesi.

Test çalıştırması sonuçları

Test çalıştırması bittikten sonra sonuçlar toplanır ve görüntülenir. Her çalıştırma için oka tıklayarak ek ayrıntıları görüntüleyebilirsiniz. test_result.xml ve test_result_failures.html gibi toplanan test yapıtlarını görmek için Çıktı Dosyalarını Görüntüle'ye tıklayın.

Test Çalıştırması Sonuçları

Şekil 30. Test çalıştırması sonuçları.

Canlı sunucu ve Tradefed günlüklerini Günlükler sekmesinde görüntüleyebilirsiniz.

Test Çalıştırması Günlükleri

Şekil 31. Günlükler sekmesi.

Bireysel modüllerin sonuçları Test Sonuçları sekmesindedir.

Test Sonuçları Sekmesi

Şekil 32. Test Sonuçları sekmesi.

Test kaynakları olarak kullanılan dosyaları Test Kaynakları sekmesinde seçeneğine tıklayarak indirebilirsiniz.

Test Kaynakları Sekmesi

Şekil 33. Test Kaynakları sekmesi.

Create_time gibi test çalıştırmasının ayrıntılarını görmek için Yapılandırma sekmesine gidin.

Test Yapılandırması Sekmesi

Şekil 34. Yapılandırma sekmesi.

Gelişmiş özellikler

Yapılandırma dosyalarını yönet

Android Test Station, testler, kanal oluşturma ve cihaz eylemleri gibi önceden tanımlanmış seçenekleri yüklemek için YAML'de yazılmış yapılandırma dosyalarını kullanır. Bazı seçenekler için örnek bir yapılandırma dosyası aşağıda gösterilmiştir.

// example_file.yaml
tests:
- id : android.cts.9_0.arm
  name: CTS 9.0 (ARM)
  test_resource_defs:
  - name: android-cts.zip
    default_download_url: https://dl.google.com/dl/android/cts/android-cts-9.0_r7-linux_x86-arm.zip
    test_resource_type: TEST_PACKAGE
  command: cts
  env_vars:
  - name: TF_PATH
    value: ${TF_WORK_DIR}/android-cts/tools:${TF_WORK_DIR}/android-cts/testcases
  - name: LD_LIBRARY_PATH
    value: ${TF_WORK_DIR}/android-cts/lib:${TF_WORK_DIR}/android-cts/lib64
  setup_scripts:
  output_file_patterns:
  - android-cts/logs/latest/.*
  - android-cts/results/latest/.*\.html
  - android-cts/results/latest/compatibility_result\..*
  - android-cts/results/latest/logo.png
  - android-cts/results/latest/test_result.xml
  result_file: test_result.xml
  java_properties:
  - name: CTS_ROOT
    value: ${TF_WORK_DIR}
  context_file_dir: android-cts/results/
  context_file_pattern: '[\d_\.]+\.zip'
  retry_command_line: retry --retry 0
  runner_sharding_args: --shard-count ${TF_SHARD_COUNT}

build_channels:
- id: google_drive
  name: Google Drive
  provider_name: Google Drive

device_actions:
- id: flash
  name: Flash
  test_resource_defs:
  - name: bootloader.img
    test_resource_type: DEVICE_IMAGE
  - name: radio.img
    test_resource_type: DEVICE_IMAGE
  - name: img.zip
    test_resource_type: DEVICE_IMAGE
  tradefed_target_preparers:
  - class_name: com.android.tradefed.targetprep.RunHostCommandTargetPreparer
    option_values:
    - name: work-dir
      values:
      - ${TF_WORK_DIR}
    - name: host-setup-command
      values:
      - adb -s $SERIAL reboot-bootloader
      - fastboot -s $SERIAL flash bootloader bootloader.img
      - fastboot -s $SERIAL flash radio radio.img
      - fastboot -s $SERIAL reboot-bootloader
      - fastboot -s $SERIAL -w update img.zip
      - adb -s $SERIAL wait-for-device
    - name: host-cmd-timeout
      values:
      - 10m

Android Test Station örneğinizi kurduğunuzda, yapılandırmanızı dosya olarak dışa aktararak diğer kullanıcılarla paylaşabilirsiniz. Bunu yapmak için Ayarlar sayfasına gidin ve sağ üstteki Dışa Aktar'a tıklayın.

Yapılandırma Dosyası Yönetimi

Şekil 35. Yapılandırma dosyası yönetimi.

Yapılandırma dosyanız indirildikten sonra dosyayı diğer kullanıcılarla paylaşın. İçe Aktar'a tıklayıp yapılandırma dosyasını seçerek yapılandırma dosyasını Android Test Station örneğine ekleyebilirler.

Yeni bir cihaz eylemi oluştur

Cihaz eylemleri, cihaz kurulum sürecini otomatikleştirmek için kullanılır. Eylemler, yeniden denemeler de dahil olmak üzere her test çalıştırmasından önce testin çalıştığı her cihazda yürütülen komut dosyalarıdır. Kullanılabilir cihaz eylemlerinin bir listesini görüntülemek için Ayarlar sayfasına gidin ve Cihaz Eylemleri sekmesine tıklayın. Yeniden başlatma ve yanıp sönme gibi çeşitli cihaz eylemleri önceden yapılandırılmış olarak gelir.

Cihaz Eylemleri sekmesi

Şekil 36. Cihaz Eylemleri sekmesi.

Yeni bir cihaz eylemi ekleme

  1. Yeni cihaz eylemi'ni tıklayın.

    Yeni Cihaz Eylemi düğmesi

    Şekil 37. Yeni cihaz eylem düğmesi.

  2. Bir ad ve açıklama girin.

    Cihaz İşlemi adı

    Şekil 38. Cihaz eylemi adı.

  3. Hedef Hazırlayıcı Ekle öğesine tıklayın.

  4. Ticaret Federasyonu Hedef Hazırlayıcı'nın tam sınıf adını girin; örneğin, com.android.tradefed.targetprep.RunHostCommandTargetPreparer .

    Hedef Hazırlayıcı Ekle

    Şekil 39. Hedef hazırlayıcı ekleme.

    Mevcut hedef hazırlayıcıların bir listesini com.android.tradefed.targetprep referansında bulabilirsiniz.

    Hedef Hazırlayıcı Listesi

    Şekil 40. Hedef Hazırlayıcı listesi.

  5. Hedef hazırlayıcıyla kullanılacak seçenekleri ekleyin. Mevcut seçenekleri görüntülemek için AOSP'deki her hedef hazırlayıcının kaynak kodu için targetprep'i kontrol edin:

    Eylem Seçeneği Örneği

    Şekil 41. Eylem seçeneği örneği.

  6. Bir seçenek eklemek için Hedef Hazırlayıcı Seçeneği Ekle'ye tıklayın ve gerekli değerleri girin.

    Eylem Komut Örneği

    Şekil 42. Eylem komutu örneği.

  7. Cihaz eylemini yürütmek için gereken test kaynaklarını tanımlayın (örneğin, flaş için görüntüler oluşturun). Kaynak tanımı eklemek için Test Kaynağı Ekle'ye tıklayın ve gerekli alanları doldurun. Dosyalarınızın nerede bulunduğunu biliyorsanız, gözat 'ı tıklayarak varsayılan bir indirme URL'si sağlayabilirsiniz. Hedef hazırlayıcılar dizini test kaynağı olarak kabul ederse Sıkıştırmayı Aç'ı seçin. Daha sonra geçici çalışma dizini altında ilgili Hedef dizinini ve sıkıştırılacak Dosya Adlarını belirtin. Hiçbir dosya adı verilmezse, tüm dosyaların sıkıştırması test kaynağından çıkarılır.

    Eylem Testi Kaynakları

    Şekil 43. Eylem testi kaynakları.

  8. Güncelle'yi tıklayın.

    Eylem Değişiklikleri Kaydet

    Şekil 44. Eylem kaydetme değişiklikleri.

Testleri yönet

Testi düzenleme

Kaydedilmiş bir testi düzenlemek için Testler sayfasına gidin ve değiştirmek istediğiniz testin satırındaki Düzenle'ye tıklayın. Test yapılandırmasını değiştirdikten sonra Güncelle öğesine tıklayın.

Testi düzenleme

Şekil 45. Bir testi düzenleme.

Yeni bir test ekle

Yeni bir test eklemek için Testler sayfasına gidin ve Yeni Test Oluştur'u tıklayın. Uygun bilgileri girin ve Oluştur'a tıklayın.

Test oluştur

Şekil 46. Test oluşturma.

Testi kopyalama

Şekil 47. Testin kopyalanması.

Ana bilgisayar yapılandırmalarını dışa aktar

Bir ana bilgisayarı yapılandırdıktan sonra, ana bilgisayarın yapılandırmalarını bir dosyaya aktarabilirsiniz. Kaydedilen konfigürasyonları kopyalamak için bu dosyayı diğer ana bilgisayarlara yükleyebilirsiniz.

Bir ana bilgisayarın yapılandırmalarını dışa aktarmak için Ayarlar sayfasına gidin ve sağ üst köşedeki Dışa Aktar'a tıklayın.

Ana makine yapılandırmalarını dışa aktarma

Şekil 48. Bir ana bilgisayar yapılandırmasını dışa aktarma.

Bir ana bilgisayar yapılandırma dosyasını içe aktarmak için Ayarlar sayfasına gidin ve sağ üst köşedeki İçe Aktar'a tıklayın.

Ana makine yapılandırmalarını içe aktarma

Şekil 49. Bir ana bilgisayar yapılandırmasını içe aktarma.

Yerel dosya ve dizinleri kullanın

R11 sürümünden itibaren $HOME/.ats_storage dizinindeki dosyalara Android Test Station'dan otomatik olarak erişilebilir. Bir dosyayı bu dizine kopyalayın veya taşıyın, ardından bir test çalıştırması planlarken bunu Yerel Dosya sekmesinden seçebilirsiniz.

cp /path/to/file $HOME/.ats_storage

Yerel bir dosya seçme

Şekil 50. $HOME/.ats_storage dizininden bir dosya seçme.

--mount_local_path bayrağıyla yerel dosya deposuna ek dizinler bağlayabilirsiniz.

mtt start --mount_local_path=/path/to/dir1 --mount_local_path=/path/to/dir2:renamed_dir2

Ek olarak monte edilmiş dizinler

Şekil 51. Yerel dosya deposuna eklenen ek dizinler.

Çoklu ana makine modunu etkinleştir

Çoklu ana bilgisayar moduyla kullanıcılar, birden fazla ATS çalışan ana bilgisayardaki cihazları ve testleri yönetmek için tek bir ATS denetleyici ana bilgisayarını kullanabilir.

Çoklu ana bilgisayar modu mimarisi

Şekil 52. Çoklu ana bilgisayar modu mimarisi.

  1. ATS denetleyicisini başlatmak için aşağıdaki komutu kullanın:

    mtt start --operation_mode=ON_PREMISE
    
  2. Kontrol denetleyicisine http://${CONTROLLER_HOSTNAME}:8000 erişilebilir.

  3. İşçileri başlatmak için aşağıdaki komutu kullanın:

    mtt start --control_server_url=http://CONTROLLER_HOSTNAME:8000 --operation_mode=ON_PREMISE
    

Ağınız ana bilgisayarların birbirleriyle iletişim kurmasına izin vermiyorsa ATS çalışanında aşağıdaki daha gelişmiş kurulum talimatlarını izlemeniz gerekir.

  1. İki ana bilgisayarı SSH tünellerini kullanarak bağlayın. Birincil ve dosya sunucusu bağlantı noktaları için bağlantı noktalarını seçin; örneğin 9000 ve 9006.

    ssh -L ATS_PORT:localhost:8000 -L FS_PORT:localhost:8006 CONTROLLER_HOSTNAME
    
  2. ATS'yi yapılandırın ve başlatın.

    DOCKER_GATEWAY_IP_ADDRESS=$(ip -4 addr show dev docker0 | grep -Eo 'inet [.0-9]+/' | grep -Eo '[.0-9]+')
    socat tcp-listen:ATS_PORT,bind="${DOCKER_GATEWAY_IP_ADDRESS}",reuseaddr,fork tcp-connect:127.0.0.1:ATS_PORT &
    socat tcp-listen:FS_PORT,bind="${DOCKER_GATEWAY_IP_ADDRESS}",reuseaddr,fork tcp-connect:127.0.0.1:FS_PORT &
    mtt start --control_server_url=http://${DOCKER_GATEWAY_IP_ADDRESS}:ATS_PORT \
                    --control_file_server_url=http://${DOCKER_GATEWAY_IP_ADDRESS}:FS_PORT \
                    --operation_mode=ON_PREMISE
    

Dosya temizleyici

Dosya temizleyici, kullanıcı tanımlı yapılandırmalara göre dosyaları temizlemek için saatlik olarak çalışan bir cron işidir. ATS'nin test çalıştırması sonuçlarını arşivlemek ve geçici dosyaları silmek için iki varsayılan yapılandırması vardır. Bu kılavuz, dosyalarınızı etkili bir şekilde yönetmek için politikaların ve yapılandırmaların nasıl özelleştirileceğini açıklamaktadır.

Politikalar

Politika, dosyalar veya dizinler üzerinde gerçekleştirilecek işlemi ve hedefleri seçme kriterlerini tanımlar. Mevcut işlemler tabloda gösterilmektedir:

Operasyon türü Parametreler
ARCHIVE remove_file : true ise arşivlemeden sonra dosyayı kaldırın.
DELETE

Kriterler dosya özniteliklerine ve sistem bilgilerine dayanmaktadır. Mevcut kriterler tabloda gösterilmektedir:

Ölçüt türü Tanım Parametreler
LAST_MODIFIED_TIME Dosyaları son değiştirilme tarih ve saatine göre filtreleyin. ttl : Çeşitli zaman ifadeleri desteklenir; örneğin, 10m , 2h , 7 days , 4w . Desteklenen formatlar için pytimeparse bakın.
LAST_ACCESS_TIME Dosyaları son erişim tarih ve saatine göre filtreleyin. LAST_MODIFIED_TIME ile aynı.
NAME_MATCH Normal ifadeyi kullanarak dosyaları adlarına göre filtreleyin. pattern : Normal ifade, örneğin, eşleşecek [a-f0-9]{8}-([a-f0-9]{4}-){3}[a-f0-9]{12}\.zip sonuç fermuarları.
SYSTEM_AVAILABLE_SPACE Sistemdeki kullanılabilir alana göre eylemleri tetikleyin. threshold : Kullanılabilir alan eşiğin altına düştüğünde eylemi tetikler; örneğin, 200 (B), 200KB , 200MB , 200GB , 2TB .

Yeni dosya temizleme politikası

Şekil 53. Yeni bir dosya temizleme ilkesi ekleyin.

Yapılandırmalar

Bir yapılandırma, bir veya daha fazla politikayı belirli dizinlerle birleştirir. Belirtilen dizinlerdeki dosya ve dizinler, tanımlanan politikalara göre işlenir. Politikalar, yapılandırmada göründükleri sıraya göre uygulanır.

Tüm hedef dizinler /data dizini altında bulunmalıdır. Yapılandırmanız hedef dizini logs olarak belirtiyorsa, /data/logs olarak yorumlanır.

Dosya temizleyici yapılandırmasını düzenle

Şekil 54. Dosya temizleyici yapılandırmasını düzenleyin.

Sıfırla

Ayarları Sıfırla'ya tıklamak, dosya temizleyici yapılandırmasını varsayılan durumuna döndürür. Bu eylem TÜM özel öğeleri siler.

Dosya temizleyici ayarlarını sıfırla

Şekil 55. Dosya temizleyici ayarlarını sıfırlayın.

Destek

Hata raporları

Android Test Station'a katkınız aracın geliştirilmesine yardımcı olur ve katkılarınızı bekliyoruz! En son sürümle ilgili ayrıntılar için ATS sürüm notlarına bakın. Hataları bildirmek veya önerilerde bulunmak için lütfen bir hata raporu gönderin . İş ortakları, hataları veya önerileri iş ortağı kanalları aracılığıyla bildirmelidir.