如何在Android测试中自动选择一个帐户?

时间:2014-06-11 16:45:49

标签: android android-intent accountmanager

我有一个应用程序,我必须自动化测试。在开始时,应用程序要求用户在继续之前选择一个帐户。这是我的代码:

IntentFilter filter = new IntentFilter("com.google.android.gms.common.account.CHOOSE_ACCOUNT");
    Intent result = new Intent();

    result.putExtra(AccountManager.KEY_ACCOUNT_NAME,TEST_EMAIL);
    getInstrumentation().addMonitor(filter, new ActivityResult(Activity.RESULT_OK, result), true);
    solo = new Solo(getInstrumentation(), getActivity());
    solo.assertCurrentActivity("MainActivity is not the current activity.", MainActivity.class);

    Database.db().wipe();
    getInstrumentation().waitForIdleSync();

据推测,此代码将捕获帐户请求,为其提供预定义的电子邮件,然后继续。实际发生的是,当我运行测试时,模拟器会显示帐户对话框,选择正确的帐户(TEST_EMAIL),然后停在那里而不是让应用程序继续运行。我错过了什么吗?

0 个答案:

没有答案