Port IMAGE - Appium¶
Stimulation¶
Dieser Port besitzt keine Stimulus-Fähigkeiten.
Besonderheiten¶
Für präzise Toucheingaben sollten Sie auf die Dauer der Aktion achten. Appium sendet eine W3C-Aktionskette, die alle Finger, Koordinaten und Dauer der Bewegungen enthält, auf einmal an das Gerät. Einige Geräte können Probleme mit zu kurzen Zeitspannen zwischen den Bewegungen haben und es wird eine Exception geworfen oder die Bewegung schießt über die Endposition hinaus.
Zum Beispiel eine Multi-Swipe-Toucheingabe mit einer Dauer von 100ms. Die dünne rote Linie markiert das Überschwingen der Bewegung, die vom Android-Emulator erzeugt wurde:
Eigenschaften 🛈¶
Name |
Verfügbar wenn |
Standardwert |
Gültige Werte |
Typ |
Beschreibung |
|---|---|---|---|---|---|
Appium |
|||||
Appium-Server IP |
Appium |
‚localhost‘ |
string |
IP-Adresse des Appium-Servers. Bspw. 0.0.0.0 |
|
Appium-Server Port |
Appium |
‚4723‘ |
string |
Port des Appium-Servers. Bspw. 4723 |
|
Appium-Server starten |
Appium |
☐ |
bool |
Startet Appium-Server automatisch beim Start der Konfiguration. |
|
Pfad zum Appium-CLI-Server |
Appium » Appium-Server starten |
string |
Unter Windows handelt es sich dabei um die im NPM Installationsverzeichnis befindliche „appium.cmd“, wenn Appium per NPM installiert wurde. Die Appium Server GUI unterstützt hingegen keinen automatischen Start des Servers. |
||
Automation-Name |
Appium |
UiAutomator2 |
[Appium, UiAutomator1, UiAutomator2, Espresso, XCUITest, Instruments, YouiEngine, Chromium, Gecko, Safari, Mac2] |
string |
Zu verwendende Automatisierung. Ab Appium 2 sind einige Optionen nicht mehr verfügbar bzw. müssen manuell nachinstalliert werden. Eine Übersicht der verfügbaren Appium Automatisierungen erhält man mit dem Befehl „appium driver list“. |
System-Port |
Appium » Automation-Name |
‚8200‘ |
string |
System-Port für die Verbindung mit dem Appium-UIAutomator2-Server oder dem Appium-Espressor-Treiber. |
|
Timeout [s] für Befehlsausführung |
Appium |
60 |
int |
Timeout [s], wie lange Appium maximal auf die erfolgreiche Durchführung eines Befehls wartet. |
|
Gerät verbinden |
Appium |
‚on config start‘ |
[‚on config start‘, ‚never‘] Anzeigewerte:
|
string |
Legt fest, ob die Verbindung beim Konfigurationsstart automatisch hergestellt wird. Falls der Start deaktiviert ist, muss die App mit dem Tooljob „ConnectDevice“ während des Testfalls gestartet werden. Hierbei können zusätzliche Parameter (Capabilities) für Appium angegeben werden. |
Zusätzliche Capabilities |
Appium |
‚{}‘ |
string |
Dictionary im JSON-Format mit zusätzlichen Appium-Capabilities. Hier angegebene Capabilities überschreiben gegebenenfalls die durch die Angaben in Testbenchkonfiguration generierten Capabilities. Beispiel: {„platform“: „iOS“} |
|
Gerät |
|||||
Plattform |
Gerät |
Android |
[Android, iOS] |
string |
Zu verwendende Plattform / Betriebssystem |
Plattform-Version |
Gerät |
string |
Zu verwendende Version der Plattform / des Betriebssystems |
||
Gerätename |
Gerät |
string |
Name des Mobilgerätes oder Emulators. Diese Option wird derzeit für Android-Geräte ignoriert. Hier reicht die Angabe der Geräte-ID. |
||
Geräte-ID |
Gerät |
string |
Nur für physische Geräte: Eindeutige Geräte-ID des verbundenen Gerätes. Kann mittels „adb devices“ auf der Kommandozeile für Android-Geräte abgefragt werden. |
||
App-Package |
Gerät » Plattform: ‚Android‘ |
string |
Packagename der installierten App, z.B. „com.google.android.youtube“ |
||
App-Activity |
Gerät » Plattform: ‚Android‘ |
string |
App-Activity, z.B. „com.google.android.youtube.HomeActivity“ |
||
App-Pfad |
Gerät » Plattform: ‚Android‘ |
string |
Pfad oder URL zur .apk-Datei. Optional, wenn App-Package und -Activity angegeben wurden. |
||
Android-Emulator starten |
Gerät » Plattform: ‚Android‘ |
☐ |
bool |
Automatisches Starten des virtuellen Geräts |
|
AVD-Name |
Gerät » Plattform: ‚Android‘ » Android-Emulator starten |
string |
Name des virtuellen Geräts (AVD), das ausgeführt werden soll. Verfügbare Geräte können mit dem Befehl „avdmanager list avd“ aufgelistet werden. |
||
AVD-Parameter |
Gerät » Plattform: ‚Android‘ » Android-Emulator starten |
string |
Optionale Kommandozeilenargumente für den AVD-Start, z.B. „-no-snapshot-load“ |
||
Bundle ID |
Gerät » Plattform: ‚iOS‘ |
string |
Optional: App-Bundle-ID, z.B. „io.appium.TestApp“ |
||
App-Pfad |
Gerät » Plattform: ‚iOS‘ |
string |
Optional: Pfad oder URL zur .ipa-Datei. |
||
Abweichende Touchscreen-Auflösung |
Gerät |
☐ |
bool |
Auflösung für Touch-Events: Bei einigen hochauflösenden Displays unterscheiden sich die Bildauflösung und die Auflösung der Displaykomponente für Toucheingaben. Dadurch kann es bei Verwendung der Tooljobs für Touch und Swipe zu einem Versatz kommen. In diesem Fall kann hier die Auflösung für das Touchdisplay angegeben werden. Die genaue Auflösung entnehmen Sie bitte den Gerätespezifikationen. |
|
Auflösung ❲X-Achse❳ |
Gerät » Abweichende Touchscreen-Auflösung |
int |
Touch-Displayauflösung (X-Koordinate) |
||
Auflösung ❲Y-Achse❳ |
Gerät » Abweichende Touchscreen-Auflösung |
int |
Touch-Displayauflösung (Y-Koordinate) |
Jobs 🛈¶
CheckKeyboardIsShown¶
Prüft, ob die Tastatur angezeigt wird.
Parametrierung
Rückgabewert
Name |
Verfügbar wenn |
Standardwert |
Gültige Werte |
Typ |
Beschreibung |
|---|---|---|---|---|---|
isKeyboardIsShown |
☐ |
bool |
Boolean, ob die Tastatur auf Smartphone angezeigt wird. |
ConnectDevice¶
Initialisiert und startet die Verbindung mit dem Smartphone.
Parametrierung
Parameter
Name |
Verfügbar wenn |
Standardwert |
Gültige Werte |
Typ |
Beschreibung |
|---|---|---|---|---|---|
capabilities |
object |
Zusätzliche Appium-Capabilities als Python dictionary. Mit diesen kann der Start und die Ausführung der Appium-Instanz beeinflusst werden. Die Capabilities werden um die Angaben in der Testbenchkonfiguration ergänzt und können diese überschreiben. Eine Auflistung der Capabilities befindet sich hier: https://appium.io/docs/en/latest/guides/caps/#common-appium-capabilities |
DisconnectDevice¶
Beendet die Verbindung mit dem Smartphone
GetScreenResolution¶
Ermittelt die Bildschirmauflösung des Smartphones.
Parametrierung
Rückgabewert
Name |
Verfügbar wenn |
Standardwert |
Gültige Werte |
Typ |
Beschreibung |
|---|---|---|---|---|---|
resolution |
object |
Bildschirmauflösung Tupel als (Breite, Höhe). |
IsDeviceLocked¶
Gibt zurück, ob das Gerät gesperrt ist. Nur für Android verfügbar.
Parametrierung
Rückgabewert
Name |
Verfügbar wenn |
Standardwert |
Gültige Werte |
Typ |
Beschreibung |
|---|---|---|---|---|---|
isScreenLocked |
☐ |
bool |
True, wenn der Bildschirm gesperrt ist, sonst False. |
LockDevice¶
Sperrt das Gerät. Nur für Android verfügbar.
PressHardwareButton¶
Simuliert das Aktivieren eines Hardware-Buttons.
Parametrierung
Parameter
Name |
Verfügbar wenn |
Standardwert |
Gültige Werte |
Typ |
Beschreibung |
|---|---|---|---|---|---|
key |
‚Home‘ |
[‚Home‘, ‚Zurück‘, ‚App wechseln‘] |
string |
Der zu aktivierende Hardware-Button. Einige Buttons sind nur auf Android verfügbar. |
StartActivity¶
Startet eine App oder Activity
Parametrierung
Parameter
Name |
Verfügbar wenn |
Standardwert |
Gültige Werte |
Typ |
Beschreibung |
|---|---|---|---|---|---|
activityName |
string |
App-Activity, z.B. „com.google.android.youtube.HomeActivity“ |
|||
appName |
string |
Packagename der installierten App, z.B. „com.google.android.youtube“ |
SwipeOnScreen¶
Simuliert eine Wisch-Geste auf dem Smartphone.
Parametrierung
Parameter
Name |
Verfügbar wenn |
Standardwert |
Gültige Werte |
Typ |
Beschreibung |
|---|---|---|---|---|---|
startPosX |
0 |
int |
Pixelposition (X Achse) |
||
startPosY |
0 |
int |
Pixelposition (Y Achse) |
||
targetPosX |
0 |
int |
Pixelposition (X Achse) |
||
targetPosY |
0 |
int |
Pixelposition (Y Achse) |
TouchPosition¶
Simuliert eine Toucheingabe auf dem Smartphone.
Parametrierung
Parameter
Name |
Verfügbar wenn |
Standardwert |
Gültige Werte |
Typ |
Beschreibung |
|---|---|---|---|---|---|
duration |
0 |
int |
Haltedauer in Millisekunden |
||
positionX |
0 |
int |
Pixelposition (X Achse) |
||
positionY |
0 |
int |
Pixelposition (Y Achse) |
UnlockDevice¶
Entsperrt das Gerät. Nur für Android verfügbar.