Paket ve modüllere kart seçenekleri ve filtreler

Öncelikle, Tradefed'deki Option kullanımı hakkındaki bilgileri anladığınızdan emin olun.

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

  • Üst düzey paket
  • Modüller

Tradefed paketi dışındaki bir bağlamda bunu düşünmeniz gerekmez. Her seçenek tam çağrıya gider. Modüller, süit bağlamında süitten ayrı tutulur. Bu nedenle, tüm seçenekler kendi düzeylerinde kullanılamaz.

Üst düzey pakete seçenekleri iletin

Üst düzey paket, standart Tradefed yapılandırması gibi davranır: Paket çalıştırıcısını da içeren tam yapılandırma, paket dışı Tradefed yapılandırması gibi tüm seçenekleri alır.

Modüllere seçenek gönderme

Modüller varsayılan olarak komuta iletilen seçeneklerin hiçbirini almaz. module-arg seçeneği aracılığıyla seçenekleri almaları için açıkça hedeflenmeleri gerekir. Modül seçeneklerinin bu şekilde ayrılması, hata ayıklamayı kolaylaştırır.

Ö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.

test-arg gibi modüllere seçenek aktarmanın başka yolları da vardır. Bu yöntemler, çalıştırıcı türüne veya sınıfına göre her modülün test çalıştırıcısına seçenek aktarmanıza olanak tanır.

Ö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, belirli sınıfın tüm test çalıştırıcılarını hedefler. test-arg, seçeneklerin potansiyel alıcısı olarak yalnızca IRemoteTest uygulamalarını dikkate alır.

java_test_host içinde bir Java test sınıfına seçenekler iletme

Bir java_test_host derleme hedefinin parçası olarak Java test sınıfınıza @Option ekliyorsanız bu seçeneği eklemek için aşağıdaki kodu 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>

Filtreleri pakete aktarma

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 önceliklidir.

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

Örnekler:

--include-filter CtsGestureTestCases

--include-filter armeabi-v7a CtsGestureTestCases

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