本頁說明如何編寫殼層測試。如果測試可以透過 Shell 指令碼完成,您可以使用 ExecutableHostTest
執行測試。ExecutableHostTest
支援測試篩選和測試資料分割。
編寫殼層測試
主要 Shell 指令碼會在主機上執行。必須先將要在裝置上執行的其他指令碼或二進位檔,以及所需的資料檔案推送至裝置。這項操作可以在主要指令碼中完成,也可以使用 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
選項。
如果指令碼需要根層級權限,請在設定中新增 RootTargetPreparer
。