2012-04-05 43 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,...