2012-04-05 15 views
0

Ich bin neu in Robotium und Android-Tests, in letzter Zeit habe ich iOS-Apps getestet. Jetzt teste ich die Android-Anwendung, und bei der ersten Aktivität gebe ich E-Mail und Passwort ein. Wenn das erledigt ist, drücke ich die Eingabetaste auf der Tastatur und die nächste Aktivität sollte erscheinen. Wie kann ich es in meinem Test implementieren? Ich habe dies in der beginnihg der Prüfung:Zu einer anderen Aktivität in Robotium gehen

EditText etEnterEmail = (EditText) solo.getView(R.id.EditText01); 
    solo.clearEditText(etEnterEmail); 
    solo.enterText(etEnterEmail, "[email protected]"); 

    EditText etEnterPassword = (EditText) solo.getView(R.id.editText2); 
    solo.clearEditText(etEnterPassword); 
    solo.enterText(etEnterPassword, "qwerty123"); 

Wie kann ich die Enter-Taste drücken? Wenn der Test ausgeführt wird, erscheint die Tastatur nicht einmal, Zeichenfolgen erscheinen nur in EditTexts. Bitte hilf mir! Ich bin verzweifelt!

Antwort

2

Sie können senden Sie es über

solo.sendKey(Solo.ENTER); 

Danach können Sie überprüfen, ob Ihr Activity durch Aktivieren angezeigt wird:

assertTrue(solo.waitForActivity(expectedClass.getSimpleName())); 
+0

Ich habe das versucht, keine Reaktion ... Test stoppt und Anwendung schließt, die nächste Aktivität erscheint immer noch nicht ... Vielleicht sollte ich importieren? – Ann

+0

Ich habe den Code hinzugefügt, den Sie hinzufügen möchten, um auf Ihre erwartete Aktivität auf meine Antwort oben zu warten. – keyboardsurfer

+0

junit.framework.AssertionFailedError – Ann

0

, wenn die Tastatur nicht vielleicht nicht zeigen versuchen solo.TypeText()

tty, wenn dieser Code für Sie funktioniert:

EditText etEnterEmail = (EditText) solo.getView(R.id.EditText01); 
solo.clearEditText(etEnterEmail); 
solo.TypeText(etEnterEmail, "[email protected]"); 

EditText etEnterPassword = (EditText) solo.getView(R.id.editText2); 
solo.clearEditText(etEnterPassword); 
solo.TypeText(etEnterPassword, "qwerty123"); 
solo.senkey(solo.ENTER); 
solo.assertCurrentActivity("check for activity", your_activity.class) //your_activity ex: MainActivity,... 
Verwandte Themen