2017-12-14 6 views
1

Ich lerne gerade Espresso, ich schreibe einen Testfall, wo Benutzer das folgende tut.So navigieren Sie zwischen den Ansichten in Android Espresso

Vorraussetzung: - eine Regel erstellen Login-Aktivität zu aktivieren:

  1. Öffnet die App
  2. Typen Passwort Benutzername
  3. Klicks auf Login-Button

Jetzt Benutzer erhält zu einer neuen Aktivität umgeleitet, wo der Benutzername angezeigt wird. Wie aktiviere ich den Text in der Aktivität Eingeloggt?

Grundsätzlich wie zwischen mehreren Aktivitäten in einem einzigen Testfall

+0

Was macht die erste Aktivität nach einer erfolgreichen Anmeldung? Wie sagt es der zweiten Aktivität, welcher Benutzername angezeigt werden soll? Wird es in der Absicht gesendet? –

+0

Wenn ich die Aktion manuell durchführe, wird durch Klicken auf den Login-Button ein Bildschirm mit einem Suchtextfeld geladen. Aber wenn ich diesen Test mit Espresso automatisiere, wird beim Klicken auf den Login-Button der Bildschirm nicht mit dem Suchtextfeld geladen. Irgendwelche Hinweise darauf, wie ich den nächsten Bildschirm laden kann, auf Knopfdruck klicken, um mich einzuloggen? – Pubudu

+0

Bitte bearbeiten Sie Ihre Frage, um den Code anzuzeigen, der ausgeführt wird, wenn der Benutzer auf die Login-Schaltfläche klickt. –

Antwort

0

Ich war in der Lage zu navigieren, dieses Problem zu lösen, indem die @Rule Notation auf die MainActivity Klasse zeigen. Zuvor hatte ich dies auf eine andere Aktivitätsklasse hingewiesen, in der Authentifizierungslogik ausgeführt wird.

0

Wenn Sie Komponententests durchführen, sollten Sie jede Aktivität unabhängig von anderen Aktivitäten testen. Wenn Sie zum Beispiel die Login-Aktivität testen, sollten Sie sich anmelden und überprüfen, ob die Login-Schaltfläche korrekt funktioniert. Wenn es startActivity() mit einer Absicht aufruft, dann sollten Sie nur überprüfen, dass die richtige Absicht gesendet wird. Diese bestimmte Aufgabe sollte sich nicht darum kümmern, welche Aktivität in der Haupt-App tatsächlich gestartet wurde. Ein weiterer Test kann dann überprüfen, ob sich die zweite Aktivität für die empfangenen Intents korrekt verhält.

Verwandte Themen