1

Wir verwenden aws device farm für die Durchführung aller unserer Android-Espresso-Tests. Wenn Sie das folgende Bild sehen, führt dieses Dialogfeld dazu, dass einige Tests fehlschlagen. enter image description hereKönnen wir ein Dialogfeld in aws Gerätefarm für Android Espressotests deaktivieren

Können wir dieses Dialogfeld trotzdem deaktivieren, während die Tests ausgeführt werden? Oder können wir den Befehl adb in der Konsole ausführen, bevor Sie die Tests ausführen. Ich schätze jede Eingabe, die Sie zur Verfügung stellen können. Danke

Antwort

1

Ich weiß nicht, einen Weg adb bei aws Lauf vor Test zu verwenden, um Berechtigungen zu gewähren, aber ...

Ein alternatives System Dialoge mit UiAutomator zu handhaben sein könnte. Dieses Tool kann in Kombination mit Espresso verwendet werden.

Beispiel:

UiDevice device = UiDevice.getInstance(InstrumentationRegistry.getInstrumentation()); 
UiObject button = device.findObject(new UiSelector().text("Allow")); 
button.click(); 

notwendig Abhängigkeit:

androidTestCompile 'com.android.support.test.uiautomator:uiautomator-v18:2.1.2' 

Ich habe angefangen, eine Bibliothek zu schreiben, die mit Espresso und uiautomator einfacher machen testen sollen. Dies beinhaltet Werkzeuge für die Bearbeitung von Berechtigungen. https://github.com/nenick/espresso-macchiato Siehe EspPermissionDialog und EspPermissionsTool