2016-08-15 4 views
1

Android Studio 2.1.2Führen Espresso-Tests und fehlschlagen, wenn ein EditText leer

ich den Test zu bekommen versuchen, zu versagen, wenn der Benutzer auf einer Schaltfläche klickt und der Benutzername ist leer. Das ist mein Code unten. Der Test wird jedoch immer bestanden. Gibt es eine Möglichkeit, den Test durchzuführen, so dass es fehlschlägt, wenn EditText leer ist.

+0

Was macht Ihre App in diesem Anwendungsfall (d. H. Wenn der Benutzer auf eine Schaltfläche klickt, wenn der Benutzername leer ist)? Dieses Verhalten sollte Sie wahrscheinlich testen. Der Test sollte so gestaltet sein, dass er bestanden wird, wenn sich die App korrekt verhält. Ein Test, der bei schlechter Eingabe durch den Benutzer fehlschlägt, ist nicht gut konzipiert, da fehlgeschlagene Tests anzeigen sollten, dass die Anwendung einen Fehler aufweist. –

Antwort

5

Tests sollten nur dann fehlschlagen, wenn der getestete Code nicht korrekt funktioniert. Ein Test, der fehlschlagen soll, weil er schlechte Benutzereingaben emuliert, ist nicht gut durchdacht. Stattdessen sollte der Test überprüfen, ob die App korrekt reagiert, wenn sich der Benutzer schlecht verhält. Wenn die App beispielsweise eine Fehlermeldung anzeigt, nachdem der Benutzer auf die Schaltfläche "Anmelden" geklickt hat, ohne einen Benutzernamen einzugeben, sollte der Test prüfen, ob die Fehlermeldung korrekt angezeigt wird. Ein solcher Test wird bestanden, wenn die App korrekt implementiert wurde und bei einem Fehler fehlschlägt.

Verwandte Themen