2012-04-05 66 views
0

我是Robotium和Android測試的新手,最近我測試了iOS應用程序。現在我正在測試Android應用程序,並且在第一個活動中輸入電子郵件和密碼,因此完成後,我按下鍵盤上的Enter按鈕並顯示下一個活動。我如何在我的測試中實現它? 我有這個測試的beginnihg:參加Robotium的其他活動

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"); 

我如何可以按下按鈕進入?當測試運行時,甚至沒有出現鍵盤,字符串只出現在EditTexts中。請幫助我!我很絕望!

回答

2

您可以通過

solo.sendKey(Solo.ENTER); 

把它之後,你可以檢查是否正在顯示您的Activity通過聲明:

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

我試過了,沒有反應......測試停止並且應用程序關閉,下一個活動仍然沒有出現......也許我應該導入? – Ann 2012-04-05 12:02:30

+0

我已經添加了您想添加的代碼,以便等待您的預期活動達到我上面的答案。 – keyboardsurfer 2012-04-05 12:06:57

+0

junit.framework.AssertionFailedError – Ann 2012-04-05 12:24:08

0

如果鍵盤不顯示也許嘗試solo.TypeText()

tty如果此代碼適合您:

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,...