Meine Android App verfügt über einen Dienst, der Benachrichtigungen an den Benutzer basierend auf Parametern wie die Anzahl der Läufe der App sendet. Die Benachrichtigungen werden zu verschiedenen Zeiten in verschiedenen Situationen gesendet. Ich möchte testen, ob Benachrichtigungen in den verschiedenen Fällen zu den richtigen Zeiten gesendet werden. Bietet Android eine Möglichkeit für eine solche Prüfung?Testen von Benachrichtigungen in Android
Antwort
lesen Sie in diesem Artikel
http://qathread.blogspot.com/2015/05/espresso-uiautomator-perfect-tandem.html
Hier können Sie schöne Erklärung zu diesem Thema finden würde:
Espresso
für Android ist perfekt und schnellen Test Automation Framework, aber es hat eine wichtige Einschränkung - Sie dürfen nur innerhalb Ihrer App im Testkontext betreiben.Das bedeutet, dass es nicht möglich ist, Tests für eine solche App Funktionen wie zu automatisieren: Benachrichtigungen
- Anwendung Push
- Kontaktsynchronisierung
- von einer anderen App zu App im Test, die Navigation
da Sie mit anderen Apps vom mobilen Gerät umgehen müssen -
NotificationBar
,Contacts
oderPeople
App usw.In der Tat war es bis zur Veröffentlichung von
UIAutomator 2.0
nicht möglich. Als in Android-Entwickler-Blog-Post angegeben - "... Am wichtigsten istUI Automator
jetzt auf Android Instrumentation basiert ...". Und weil davon können wirUIAutomator
Tests sowieEspresso
Tests mitInstrumentation test runner
ausführen.Zusätzlich zu, dass wir kombinieren UIAutomator testet zusammen mit
Espresso
Tests und das gibt uns die wirkliche Macht und Kontrolle über das Telefon und Anwendung in der Prüfung.
Testing Mitteilung UIAutomator mit: -
Nur durch den Code unten gehen. Es wird Ihnen beim Testen der Benachrichtigung helfen.
UiDevice device = UiDevice.getInstance(InstrumentationRegistry.getInstrumentation());
device.openNotification();
device.wait(Until.hasObject(By.text(NOTIFICATION_TITLE)), TIMEOUT);
UiObject2 title = device.findObject(By.text(NOTIFICATION_TITLE));
UiObject2 text = device.findObject(By.text(NOTIFICATION_TEXT));
assertEquals(NOTIFICATION_TITLE, title.getText());
assertEquals(NOTIFICATION_TEXT, text.getText());
title.click();
device.wait(Until.hasObject(By.text(ESPRESSO.getName())), TIMEOUT);`
Vergessen Sie nicht die UIAutomator Abhängigkeiten in build.gradle hinzuzufügen.
`//UIAutomator dependency
androidTestCompile 'com.android.support.test.uiautomator:uiautomator-v18:2.1.1'`
geschrieben von @ dcr24 Ich habe noch nicht genug Reputation zu kommentieren. Prem Choudhary's Antwort ist ziemlich genial, aber es ist wichtig zu beachten, dass dies nur unter der Voraussetzung funktioniert, dass das Gerät entsperrt ist, sonst funktioniert device.openNotification() nicht für den Sperrbildschirm. –
- 1. Überschreiben von Benachrichtigungen in Android
- 2. Benachrichtigungen Android
- 3. Testen von GPS in Android
- 4. behandeln verschiedene Arten von Benachrichtigungen in Android
- 5. Testen von Android-Fragmenten
- 6. Aktuelle Benachrichtigungen Android
- 7. Könnte die Benachrichtigungen in android
- 8. Android Remote View Benachrichtigungen
- 9. Android: Verwalten mehrerer Benachrichtigungen
- 10. Testen von Apple Push-Benachrichtigungen Feedback - keine Artikel erhalten
- 11. Ionic Android Benachrichtigungen Stacking
- 12. Android-Benachrichtigungen über Service
- 13. Android Wear 2.0 Benachrichtigungen
- 14. Verwenden von Benachrichtigungen auf Android mit MvvmCross
- 15. Robolectric (Android): Testen von Ereignissen?
- 16. Erstellen von Benachrichtigungen innerhalb des BroadcastReceivers: Android
- 17. Stop Senden von lokalen Benachrichtigungen android
- 18. Senden Firebase Benachrichtigungen von Android-Gerät
- 19. Testen von GCM in einfachen JUnit-Tests
- 20. Android RemoteViews für erweiterte Benachrichtigungen
- 21. Parse Push-Benachrichtigungen auf Android
- 22. Wie stapeln Sie Benachrichtigungen in Android?
- 23. XMPP (Openfire) Push-Benachrichtigungen Android
- 24. Android Parse, Benachrichtigungen und BuildTypes
- 25. Automatisiertes Testen in Android-Entwicklung
- 26. Wie planen lokale Benachrichtigungen Android?
- 27. Sind Android Push-Benachrichtigungen zuverlässig?
- 28. So planen Sie Benachrichtigungen in Android
- 29. Benachrichtigungen in bestimmten Zeit jeden Tag android
- 30. Wie Android Benachrichtigungen in Echtzeit aktualisieren?
Welchen Benachrichtigungsdienst verwenden Sie? –
Ich verwende einen Hintergrunddienst, der alle paar Tage eine Benachrichtigung sendet. – user12345
Ich meine, verwenden Sie einfache Benachrichtigung oder Push-Benachrichtigung? –