RemoteAndroidTestRunner
public
class
RemoteAndroidTestRunner
extends Object
implements
IRemoteAndroidTestRunner
| java.lang.Object | |
| ↳ | com.android.ddmlib.testrunner.RemoteAndroidTestRunner |
Führt einen Android-Testbefehl remote aus und meldet die Ergebnisse.
Zusammenfassung
Öffentliche Konstruktoren | |
|---|---|
RemoteAndroidTestRunner(String packageName, IShellEnabledDevice remoteDevice)
Alternativer Konstruktor. |
|
RemoteAndroidTestRunner(String packageName, String runnerName, IShellEnabledDevice remoteDevice)
Alternativer Konstruktor. |
|
RemoteAndroidTestRunner(String packageName, String runnerName, IShellEnabledDevice remoteDevice, RemoteAndroidTestRunner.StatusReporterMode statusReporterMode)
Erstellt einen Remote-Android-Testrunner. |
|
Öffentliche Methoden | |
|---|---|
void
|
addBooleanArg(String name, boolean value)
Fügt dem Instrumentierungsbefehl ein boolesches Argument hinzu. |
void
|
addInstrumentationArg(String name, String value)
Fügt dem Instrumentierungsbefehl ein Argument hinzu. |
void
|
cancel()
Fordert die Stornierung dieses Testlaufs an. |
IInstrumentationResultParser
|
createParser(String runName,
Erstellen Sie den |
String
|
getAmInstrumentCommand()
|
IRemoteAndroidTestRunner.CoverageOutput
|
getCoverageOutputType()
Gibt den Typ der Testabdeckung zurück, die vom Runner erzeugt wird. |
String
|
getPackageName()
Gibt den Paketnamen der Anwendung zurück. |
String
|
getRunOptions()
Gibt Optionen für den Befehl „am instrument“ zurück. |
String
|
getRunnerName()
Gibt den runnerName zurück. |
void
|
removeInstrumentationArg(String name)
Entfernt ein zuvor hinzugefügtes Argument. |
void
|
run(ITestRunListener... listeners)
Führen Sie diesen Testlauf aus. |
void
|
run(
Führen Sie diesen Testlauf aus. |
void
|
setAdditionalTestOutputLocation(String additionalTestDataPath)
Legt den Speicherort der zusätzlichen Testausgabe fest, die auf den Host kopiert werden soll, bevor die Test-App deinstalliert wird. |
void
|
setClassName(String className)
Legt fest, dass nur Tests in dieser Klasse ausgeführt werden. Muss vor „run“ aufgerufen werden. |
void
|
setClassNames(String[] classNames)
Legt fest, dass nur Tests in den angegebenen Klassen ausgeführt werden sollen. Muss vor „run“ aufgerufen werden. |
void
|
setCoverage(boolean coverage)
Legt den Code-Coverage-Modus für diesen Testlauf fest. |
void
|
setCoverageReportLocation(String reportPath)
Legt den Speicherort der generierten Abdeckungsberichte fest. |
void
|
setDebug(boolean debug)
Legt den Debug-Modus für diesen Testlauf fest. |
void
|
setLogOnly(boolean logOnly)
Legt für diesen Testlauf den reinen Protokollierungsmodus fest. Die Testausführung wird übersprungen. |
void
|
setMaxTimeToOutputResponse(long maxTimeToOutputResponse, TimeUnit maxTimeUnits)
Legt die maximal zulässige Zeit zwischen der Ausgabe des Shell-Befehls, mit dem die Tests auf den Geräten ausgeführt werden, fest. |
void
|
setMaxTimeout(long maxTimeout, TimeUnit maxTimeUnits)
Legt die maximal zulässige Zeit für den Abschluss der Instrumentierung fest. |
void
|
setMaxtimeToOutputResponse(int maxTimeToOutputResponse)
|
void
|
setMethodName(String className, String testName)
Legt fest, dass nur die angegebene Testmethode ausgeführt wird. Muss vor „run“ aufgerufen werden. |
void
|
setRunName(String runName)
Legen Sie einen benutzerdefinierten Namen für den Lauf fest, der am Wenn nichts angegeben ist, wird der Paketname verwendet. |
void
|
setRunOptions(String options)
Legt Optionen für den Befehl „am instrument“ fest. |
void
|
setTestCollection(boolean collect)
Legt für diesen Testlauf den Testsammlungsmodus fest. |
void
|
setTestPackageName(String packageName)
Legt fest, dass alle Tests im angegebenen Paket ausgeführt werden. Muss vor „run“ aufgerufen werden. |
void
|
setTestSize(IRemoteAndroidTestRunner.TestSize size)
Legt fest, dass nur Tests der angegebenen Größe ausgeführt werden. |
Geschützte Methoden | |
|---|---|
String
|
getArgsCommand()
Gibt die vollständige Befehlszeilensyntax für die bereitgestellten Instrumentierungsargumente zurück. |
String
|
getRunnerPath()
Gibt den vollständigen Pfad der Instrumentation-Komponente zurück. |
Öffentliche Konstruktoren
RemoteAndroidTestRunner
public RemoteAndroidTestRunner (String packageName,
IShellEnabledDevice remoteDevice)Alternativer Konstruktor. Verwendet den Standard-Instrumentierungs-Runner.
| Parameter | |
|---|---|
packageName |
String: Das Android-Anwendungspaket, das die auszuführenden Tests enthält |
remoteDevice |
IShellEnabledDevice: das Android-Gerät, auf dem Tests ausgeführt werden sollen |
RemoteAndroidTestRunner
public RemoteAndroidTestRunner (String packageName,
String runnerName,
IShellEnabledDevice remoteDevice)Alternativer Konstruktor. Verwendet den Standardwert statusReporterMode.
| Parameter | |
|---|---|
packageName |
String: Das Android-Anwendungspaket, das die auszuführenden Tests enthält |
runnerName |
String: Der Instrumentation-Testrunner, der ausgeführt werden soll. Wenn „null“, wird der Standard-Runner verwendet. |
remoteDevice |
IShellEnabledDevice: das Android-Gerät, auf dem Tests ausgeführt werden sollen |
RemoteAndroidTestRunner
public RemoteAndroidTestRunner (String packageName,
String runnerName,
IShellEnabledDevice remoteDevice,
RemoteAndroidTestRunner.StatusReporterMode statusReporterMode)Erstellt einen Remote-Android-Testrunner.
| Parameter | |
|---|---|
packageName |
String: Das Android-Anwendungspaket, das die auszuführenden Tests enthält |
runnerName |
String: Der Instrumentation-Testrunner, der ausgeführt werden soll. Wenn „null“, wird der Standard-Runner verwendet. |
remoteDevice |
IShellEnabledDevice: das Android-Gerät, auf dem Tests ausgeführt werden sollen |
statusReporterMode |
RemoteAndroidTestRunner.StatusReporterMode: Der Statusberichtsmodus, der für einen Gerätebefehl verwendet werden soll. |
Öffentliche Methoden
addBooleanArg
public void addBooleanArg (String name,
boolean value)Fügt dem Instrumentierungsbefehl ein boolesches Argument hinzu.
| Parameter | |
|---|---|
name |
String: der Name des Arguments für das Instrumentierungs-Bundle |
value |
boolean: der Wert des Arguments |
addInstrumentationArg
public void addInstrumentationArg (String name,
String value)Fügt dem Instrumentierungsbefehl ein Argument hinzu.
Muss vor „run“ aufgerufen werden. Wenn ein Argument mit dem angegebenen Namen bereits bereitgestellt wurde, wird sein Wert überschrieben.
| Parameter | |
|---|---|
name |
String: der Name des Arguments für das Instrumentierungs-Bundle |
value |
String: der Wert des Arguments |
Abbrechen
public void cancel ()
Fordert die Stornierung dieses Testlaufs an.
createParser
public IInstrumentationResultParser createParser (String runName,listeners)
Erstellen Sie den InstrumentationResultParser, der zum Parsen der Instrumentierungsausgabe verwendet wird.
| Parameter | |
|---|---|
runName |
String: Der Name des zu verwendenden Laufs. |
listeners |
: Die Listener, an die die Ergebnisse gemeldet werden sollen. |
| Returns | |
|---|---|
IInstrumentationResultParser |
Eine Instanz von InstrumentationResultParser. |
getAmInstrumentCommand
public String getAmInstrumentCommand ()
| Returns | |
|---|---|
String |
|
getCoverageOutputType
public IRemoteAndroidTestRunner.CoverageOutput getCoverageOutputType ()
Gibt den Typ der Testabdeckung zurück, die vom Runner erzeugt wird. CoverageOutput ansehen.
| Returns | |
|---|---|
IRemoteAndroidTestRunner.CoverageOutput |
|
getPackageName
public String getPackageName ()
Gibt den Paketnamen der Anwendung zurück.
| Returns | |
|---|---|
String |
|
getRunOptions
public String getRunOptions ()
Gibt Optionen für den Befehl „am instrument“ zurück.
| Returns | |
|---|---|
String |
|
getRunnerName
public String getRunnerName ()
Gibt den runnerName zurück.
| Returns | |
|---|---|
String |
|
removeInstrumentationArg
public void removeInstrumentationArg (String name)
Entfernt ein zuvor hinzugefügtes Argument.
| Parameter | |
|---|---|
name |
String: der Name des zu entfernenden Arguments für das Instrumentierungs-Bundle |
Homerun
public void run (ITestRunListener... listeners)
Führen Sie diesen Testlauf aus.
Convenience-Methode für ERROR(/#run(Collection)).
| Parameter | |
|---|---|
listeners |
ITestRunListener: wartet auf Testergebnisse |
| Ausgabe | |
|---|---|
AdbCommandRejectedException |
|
ShellCommandUnresponsiveException |
|
TimeoutException |
|
Homerun
public void run (listeners)
Führen Sie diesen Testlauf aus.
| Parameter | |
|---|---|
listeners |
: Sammlung von Listenern für Testergebnisse |
| Ausgabe | |
|---|---|
AdbCommandRejectedException |
|
ShellCommandUnresponsiveException |
|
TimeoutException |
|
setAdditionalTestOutputLocation
public void setAdditionalTestOutputLocation (String additionalTestDataPath)
Legt den Speicherort der zusätzlichen Testausgabe fest, die auf den Host kopiert werden soll, bevor die Test-App deinstalliert wird. z.B. generierte Benchmarkberichte.
| Parameter | |
|---|---|
additionalTestDataPath |
String |
setClassName
public void setClassName (String className)
Legt fest, dass nur Tests in dieser Klasse ausgeführt werden. Muss vor „run“ aufgerufen werden.
| Parameter | |
|---|---|
className |
String: Vollständig qualifizierter Klassenname (z. B. x.y.z) |
setClassNames
public void setClassNames (String[] classNames)
Legt fest, dass nur Tests in den angegebenen Klassen ausgeführt werden sollen. Muss vor „run“ aufgerufen werden.
Wenn Sie mehr als eine Klasse angeben, ist ein InstrumentationTestRunner erforderlich, der die Syntax für mehrere Klassenargumente unterstützt.
| Parameter | |
|---|---|
classNames |
String: Array mit vollständig qualifizierten Klassennamen (z. B. x.y.z) |
setCoverage
public void setCoverage (boolean coverage)
Legt den Code-Coverage-Modus für diesen Testlauf fest.
| Parameter | |
|---|---|
coverage |
boolean |
setCoverageReportLocation
public void setCoverageReportLocation (String reportPath)
Legt den Speicherort der generierten Abdeckungsberichte fest.
| Parameter | |
|---|---|
reportPath |
String |
setDebug
public void setDebug (boolean debug)
Legt den Debug-Modus für diesen Testlauf fest. Wenn „true“, wartet der Android-Test-Runner, bis ein Debugger angehängt wird, bevor er mit der Testausführung fortfährt.
| Parameter | |
|---|---|
debug |
boolean |
setLogOnly
public void setLogOnly (boolean logOnly)
Legt für diesen Testlauf den reinen Protokollierungsmodus fest. Die Testausführung wird übersprungen.
| Parameter | |
|---|---|
logOnly |
boolean |
setMaxTimeToOutputResponse
public void setMaxTimeToOutputResponse (long maxTimeToOutputResponse,
TimeUnit maxTimeUnits)Legt die maximal zulässige Zeit zwischen der Ausgabe des Shell-Befehls, mit dem die Tests auf den Geräten ausgeführt werden, fest.
So kann ein Zeitlimit festgelegt werden, falls die Tests hängen bleiben und nie abgeschlossen werden. Dies unterscheidet sich von der normalen Zeitüberschreitung bei der Verbindung.
Standardmäßig wird kein Zeitlimit angegeben.
| Parameter | |
|---|---|
maxTimeToOutputResponse |
long: Die maximale Zeit, in der der Befehl keine Ausgabe erzeugen darf. Ein Wert von 0 bedeutet, dass die Methode unbegrenzt auf die Befehlsausgabe wartet (bis receiver die Ausführung abbricht) und nie eine Ausnahme auslöst. |
maxTimeUnits |
TimeUnit: Einheiten für maxTimeToOutputResponse- und maxTimeout-Werte ungleich null. |
setMaxTimeout
public void setMaxTimeout (long maxTimeout,
TimeUnit maxTimeUnits)Legt die maximal zulässige Zeit für den Abschluss der Instrumentierung fest.
So kann ein Zeitlimit festgelegt werden, falls die Tests hängen bleiben und nie abgeschlossen werden. Dies unterscheidet sich von der normalen Zeitüberschreitung bei der Verbindung.
Standardmäßig wird kein Zeitlimit angegeben.
| Parameter | |
|---|---|
maxTimeout |
long: Die maximale Zeit, in der der Befehl keine Antwort ausgeben darf. Ein Wert von 0 bedeutet, dass die Methode unbegrenzt auf die Befehlsausgabe wartet (bis receiver die Ausführung abbricht) und nie eine Ausnahme auslöst. |
maxTimeUnits |
TimeUnit: Einheiten für maxTimeToOutputResponse- und maxTimeout-Werte ungleich null. |
setMaxtimeToOutputResponse
public void setMaxtimeToOutputResponse (int maxTimeToOutputResponse)
| Parameter | |
|---|---|
maxTimeToOutputResponse |
int |
setMethodName
public void setMethodName (String className,
String testName)Legt fest, dass nur die angegebene Testmethode ausgeführt wird. Muss vor „run“ aufgerufen werden.
| Parameter | |
|---|---|
className |
String: Vollständig qualifizierter Klassenname (z. B. x.y.z) |
testName |
String: Name der Methode |
setRunName
public void setRunName (String runName)
Legen Sie einen benutzerdefinierten Namen für den Lauf fest, der am run( an ITestRunListener gemeldet werden soll.
Wenn nichts angegeben ist, wird der Paketname verwendet.
setRunOptions
public void setRunOptions (String options)
Legt Optionen für den Befehl „am instrument“ fest. Eine vollständige Liste der Optionen finden Sie unter com/android/commands/am/Am.java.
| Parameter | |
|---|---|
options |
String |
setTestCollection
public void setTestCollection (boolean collect)
Legt für diesen Testlauf den Testsammlungsmodus fest. Bei „true“ wird die Testausführung übersprungen und alle entsprechenden Runner-Argumente festgelegt, die für eine erfolgreiche Testsammlung erforderlich sind.
| Parameter | |
|---|---|
collect |
boolean |
setTestPackageName
public void setTestPackageName (String packageName)
Legt fest, dass alle Tests im angegebenen Paket ausgeführt werden. Muss vor „run“ aufgerufen werden.
| Parameter | |
|---|---|
packageName |
String: Vollständig qualifizierter Paketname (z. B. x.y.z) |
setTestSize
public void setTestSize (IRemoteAndroidTestRunner.TestSize size)
Legt fest, dass nur Tests der angegebenen Größe ausgeführt werden. Muss vor „run“ aufgerufen werden.
| Parameter | |
|---|---|
size |
IRemoteAndroidTestRunner.TestSize: Die auszuführende TestSize. |
Geschützte Methoden
getArgsCommand
protected String getArgsCommand ()
Gibt die vollständige Befehlszeilensyntax für die bereitgestellten Instrumentierungsargumente zurück. Gibt einen leeren String zurück, wenn keine Argumente angegeben wurden.
| Returns | |
|---|---|
String |
|
getRunnerPath
protected String getRunnerPath ()
Gibt den vollständigen Pfad der Instrumentation-Komponente zurück.
| Returns | |
|---|---|
String |
|