Auf dieser Seite wird beschrieben, wie Sie einen Shell-Test schreiben. Wenn ein Test mit einem Shell-Skript durchgeführt werden kann, können Sie ihn mit ExecutableHostTest
ausführen. ExecutableHostTest
unterstützt die Filterung und das Sharding von Tests.
Shell-Test schreiben
Ihr Haupt-Shell-Skript wird auf dem Host ausgeführt. Andere Skripts oder Binärdateien, die auf dem Gerät ausgeführt werden sollen, und die erforderlichen Datendateien müssen zuerst auf das Gerät übertragen werden.
Dies kann im Hauptskript oder mit PushFilePreparer
erfolgen.
Wenn der Test Binärmodule für Geräte hat, die zusammen mit dem Test installiert werden sollen, geben Sie sie mit dem Attribut data_device_bins
an.
sh_test {
name: "module-name",
...
data_device_bins: ["target-name"],
}
Ein Beispiel dafür ist der Shell-Test ziptool-tests
.
Das Testergebnis für jeden Test basiert auf dem Exit-Status Ihres Hauptskripts.
Ein Test kann ein Zeitlimit überschreiten, wenn per-binary-timeout
angegeben wurde.
Shell-Test konfigurieren
In der Tradefed-XML-Konfiguration werden Shell-Tests über den Runner ExecutableHostTest
ausgeführt.
<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>
Legen Sie das Hauptskript für den Test als Wert der Option binary
fest. Sehen Sie sich andere ExecutableHostTest
-Optionen an.
Wenn für das Script Root-Berechtigungen erforderlich sind, fügen Sie der Konfiguration RootTargetPreparer
hinzu.