touchAction
Warnhinweis zur Veraltung
Der Befehl touchAction
ist veraltet und wird in einer zukünftigen Version entfernt.
Wir empfehlen stattdessen den action
Befehl mit
dem Zeigertyp touch
zu verwenden, z.B.:
await browser.action('pointer', {
parameters: { pointerType: 'touch' }
})
Die Touch Action API bildet die Grundlage aller Gesten, die in Appium automatisiert werden können. Sie ist derzeit nur für native Apps verfügbar und kann nicht zur Interaktion mit Webapps verwendet werden. Im Kern steht die Möglichkeit, einzelne ad hoc Aktionen miteinander zu verketten, die dann auf ein Element in der Anwendung auf dem Gerät angewendet werden. Die grundlegenden Aktionen, die verwendet werden können, sind:
- press (Element oder (
x
,y
) oder beides übergeben) - longPress (Element oder (
x
,y
) oder beides übergeben) - tap (Element oder (
x
,y
) oder beides übergeben) - moveTo (absolute
x
,y
Koordinaten übergeben) - wait (
ms
(als Millisekunden) übergeben) - release (keine Argumente)
Verwendung
browser.touchAction(action)
Parameter
Name | Typ | Details |
---|---|---|
action | TouchActions | auszuführende Aktion |
Beispiel
touchAction.js
it('should do a touch gesture', async () => {
const screen = await $('//UITextbox');
// simple touch action on element
await browser.touchAction({
action: 'tap',
element: screen
});
// simple touch action x y variables
// tap location is 30px right and 20px down relative from the viewport
await browser.touchAction({
action: 'tap',
x: 30,
y:20
})
// simple touch action x y variables
// tap location is 30px right and 20px down relative from the center of the element
await browser.touchAction({
action: 'tap',
x: 30,
y:20,
element: screen
})
// multi action on an element
// drag&drop from position 200x200 down 100px on the screen
await browser.touchAction([
{ action: 'press', x: 200, y: 200 },
{ action: 'moveTo', x: 200, y: 300 },
'release'
])
});