Klicken Sie auf " Grenzen / Koordinaten
Ich weiß, es ist möglich für einen Espresso zu klicken, indem Sie Grenzen den Weg UiAutomator hat. (x-und y-Koordinaten) habe ich gelesen, durch die Dokumentation, aber ich kann nicht scheinen, um es zu finden. Jede Hilfe ist willkommen. Dank
Bearbeiten
Ich fand dieser link, aber keine Beispiele, wie es zu benutzen, Mein Hauptanliegen dabei ist, die UiController
ist oder wie es zu benutzen.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Espresso hat die
GeneralClickAction
, dies ist die zugrunde liegende Implementierung ViewActionsclick()
,doubleClick()
, undlongClick()
.Den
GeneralClickAction
's Konstruktor nimmt einenCoordinatesProvider
als zweites argument.So die grundlegende Idee ist, erstellen Sie eine statische
ViewAction
getter, die eine benutzerdefinierteCoordinatesProvider
. So etwas wie dieses:Einer Allgemeinen Beratung mit Espresso: anstatt auf der Suche für die Dokumentation (es gibt praktisch keine), Blick auf den Quellcode. Espresso ist open source und der Quellcode selbst ist von wirklich guter Qualität.
onView(...)
? Ich habe versucht `onView(isRoot()). und es hat nicht geklappt mit keine übereinstimmung. Hinweis : ich bin derzeit mit dialog vor@haffax ' s Antwort ist Super und funktioniert gut.
Jedoch, wenn Sie möchten, klicken Sie in einen bestimmten Teil einer Ansicht, die sich ändern können, von Bildschirm zu Bildschirm mag es nützlich sein, klicken Sie auf basierend auf Prozenten (oder Kennzahlen) als auch die dp-zahlen können nicht stabil über alle Bildschirme. So, ich habe eine einfache Modifikation ist es:
Ich dachte, ich würde teilen es hier mit, damit andere davon profitieren können.
Gültige Antwort half mir zwar, dass die Methode veraltet ist.
Jetzt müssen Sie die
inputDevice
(zum BeispielInputDevice.SOURCE_MOUSE
) undbuttonState
(zum BeispielMotionEvent.BUTTON_PRIMARY
Beispiel in Kotlin: