Trade Federation'da Shell Testi Yazma

Bu sayfada bir kabuk testinin nasıl yazılacağı anlatılmaktadır. Bir kabuk betiği ile bir test yapılabiliyorsa, bunu ExecutableHostTest ile çalıştırabilirsiniz. ExecutableHostTest , test filtrelemeyi ve test parçalamayı destekler.

Kabuk testi yazma

Ana kabuk betiğiniz ana bilgisayarda çalışır. Cihazda çalışacak diğer komut dosyaları veya ikili dosyalar ve gerekli veri dosyaları önce cihaza gönderilmelidir. Bu, ana komut dosyasının bir parçası olarak veya PushFilePreparer kullanılarak yapılabilir.

Test, testin yanında kurulması gereken cihaz ikili modüllerine sahipse, bunları data_device_bins özelliği ile belirtin.

sh_test {
    name: "module-name",
    ...
    data_device_bins: ["target-name"],
}

Shell testi ziptool-tests böyle bir örnektir.

Her testin test sonucu, ana komut dosyanızın çıkış durumuna bağlıdır. Her per-binary-timeout belirtilmişse, bir test zaman aşımına uğrayabilir.

Kabuk testi yapılandırma

Tradefed XML yapılandırmasında, kabuk testleri ExecutableHostTest çalıştırıcısı aracılığıyla çalıştırılır.

<test class="com.android.tradefed.testtype.binary.ExecutableHostTest" >
    <option name="binary" value="your-test-script.sh" />
    <option name="relative-path-execution" value="true" />
    <option name="per-binary-timeout" value="15m" />
</test>

Test için ana komut dosyasını binary seçeneğin değeri olarak ayarlayın. Diğer ExecutableHostTest seçeneklerine göz atın.

Komut dosyası kök ayrıcalığı gerektiriyorsa, yapılandırmaya RootTargetPreparer ekleyin.