本頁說明如何編寫殼層測試。如果可以使用 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
。