在 Trade Federation 中編寫 Shell 測試

本頁介紹如何編寫 shell 測試。如果可以使用 shell 腳本完成測試,則可以使用ExecutableHostTest運行它。 ExecutableHostTest支持測試過濾和測試分片。

編寫 shell 測試

您的主 shell 腳本在主機上運行。要在設備上運行的其他腳本或二進製文件以及所需的數據文件必須先推送到設備。這可以作為主腳本的一部分或使用PushFilePreparer來完成。

如果測試具有應與測試一起安裝的設備二進制模塊,請使用data_device_bins屬性指定它們。

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

Shell test ziptool-tests就是這樣一個例子。

每個測試的測試結果基於您的主腳本的退出狀態。如果指定了per-binary-timeout ,則測試可能會超時。

配置外殼測試

在 Tradefed XML 配置中,shell 測試通過ExecutableHostTest運行程序運行。

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

將測試的主腳本設置為binary選項的值。查看其他ExecutableHostTest選項。

如果腳本需要 root 權限,請將RootTargetPreparer添加到配置中。