Seçenekleri ve filtreleri pakete ve modüllere iletme

Öncelikle Tradefed'de Seçenek İşleme'yi anladığınızdan emin olun.

SUITE kurulumu, SUITE yapısında bulunan iki katmanı açıklar:

  • Üst düzey süit
  • Modüller

Ticari olmayan bir bağlamda, bunu düşünmeye gerek yok. aradaki süre: seçeneği tam çağrıya geçer. Modüller, süit bağlamında süitten ayrı tutulur. Bu nedenle, tüm seçenekler kendi düzeylerinde kullanılamaz.

Üst kattaki süite farklı kart seçenekleri

Üst düzey paket, standart Tradefed yapılandırması gibi davranır: dahil tüm seçenekleri alır. Örneğin, paket dışı Tradefed yapılandırmasıdır.

Modüllere seçenek gönderme

Modüller varsayılan olarak komuta iletilen seçeneklerin hiçbirini almaz. Reklamlardan gelen seçenekleri alabilmeleri için module-arg seçeneği. Modül seçeneklerinin bu yalıtımı, hata ayıklama işlemini daha kolay.

Örnek:

cts-tradefed run cts --module-arg <module-name>:<option-name>:<option-value>

cts-tradefed run cts --module-arg CtsGestureTestCases:collect-tests-only:true

Söz dizimi, hedeflenen modülün verilen seçeneği almasını sağlar.

Seçenekleri, modüllere aktarmanın başka yolları da vardır. Örneğin, test-arg. seçenekleri, koşucuya göre her modülün test çalıştırıcısına iletmenizi sağlar türü veya sınıfı.

Örnek:

cts-tradefed run cts --test-arg <test-class>:<option-name>:<option-value>

cts-tradefed run cts --test-arg com.android.tradefed.testtype.JarHosttest:collect-tests-only:true

Söz dizimi, belirli bir modülü değil, tüm test çalışanlarını hedefler seçin. test-arg, seçeneklerin potansiyel alıcısı olarak yalnızca IRemoteTest uygulamalarını dikkate alır.

Java_test_host'ta bir Java test sınıfına seçenekleri iletin.

java_test_host derleme hedefinin bir parçası olarak java test sınıfınıza @Option ekleyecekseniz bu seçeneği eklemek için aşağıdakileri kullanmanız gerekir:

cts-tradefed run cts --module-arg <module-name>:set-option:<option-name>:<option-value>

Bu bağlamda set-option, test donanımındaki HostTest çalıştırıcısının, Java sınıflarınızı yürütmek için sarmalayan seçeneğidir.

Seçenekler için jar dosyası hedefiniz birden fazla test sınıfı içeriyorsa varsayılan olarak bunların hepsinin @option parametresini içermesi veya tek bir sınıfı hedeflemek için aşağıdaki söz dizimini kullanması gerekir:

cts-tradefed run cts --module-arg <module-name>:set-option:<class-name>:<option-name>:<option-value>

Pakete filtre ekleyin

Bir paketteki bazı testleri filtrelemek için --include-filter ve --exclude-filter'yi kullanarak belirli bir testi veya modülü zorla dahil edebilir ya da hariç tutabiliriz. Hariç tutma önceliği vardır.

Şu biçimi kullanırlar: [abi] <module-name> [test name]

Örnekler:

--include-filter CtsGestureTestCases

--include-filter armeabi-v7a CtsGestureTestCases

--include-filter armeabi-v7a CtsGestureTestCases android.gesture.cts.GestureTest#testGetStrokes