撰寫貿易聯盟的殼測試

本頁說明如何編寫殼層測試。如果可以使用 Shell 指令碼執行測試,您可以使用 ExecutableHostTest 執行測試。ExecutableHostTest 支援測試篩選和測試分割。

編寫殼層測試

主要殼層指令碼會在主機上執行。其他要在裝置上執行的指令碼或二進位檔,以及所需的資料檔案,必須先推送至裝置。您可以透過主要指令碼或 PushFilePreparer 執行這項操作。

如果測試包含應與測試一併安裝的裝置二進位模組,請使用 data_device_bins 屬性指定這些模組。

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

殼層測試 ziptool-tests 便是如此。

每項測試的結果會根據主要指令碼的結束狀態而定。如果指定 per-binary-timeout,測試可能會逾時。

設定殼層測試

在 Tradefed XML 設定中,殼層測試會透過 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