![](/img/trans.png)
[英]How to redirect a activity to its previous activity when home button is clicked
[英]Robotium: verify that activity gets finished and the underlying one restored when “home” button clicked
我正在使用Android批注,並且在“活動”中有以下代碼:
@OptionsItem
void homeSelected() {
finish();
}
顯然,當用戶單擊ActionBar中的主頁按鈕時,此代碼應完成當前活動。 但是如何測試此代碼? 我希望能夠以某種方式驗證單擊主頁按鈕后,當前活動已完成,並且先前的活動已還原。 這可能嗎? 或者至少可以驗證單擊“主頁”按鈕后是否調用了homeSelected
方法?
我正在使用Robotium,並且具有以下測試方法:
@SmallTest
public void testGoBack() {
solo.clickOnActionBarHomeButton();
// ???? How do I verify the homeSelected method was actually called?
}
您可以使用waitForActivity(...)
。
waitForActivity(Class<? extends android.app.Activity> activityClass)
等待與指定類匹配的Activity。
查看文檔 。
@SmallTest
public void testGoBack() {
solo.clickOnActionBarHomeButton();
solo.waitForActivity(com.example.UpActivity.class);
}
默認例程使用20秒超時。
ps:或者將調試日志添加到您活動的onDestroy()
方法中:
public class MyActivity extends Activity {
...
@Override
protected void onDestroy() {
super.onDestroy();
Log.d ("TAG", "Finishing MyActivity");
}
}
並在測試方法中等待以下日志消息:
waitForLogMessage("Finishing MyActivity");
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.