Проверьте, если при нажатии кнопки правильное действие запускается - PullRequest
1 голос
/ 11 августа 2011

Я пишу тест для действия, в котором есть несколько кнопок, каждая из которых запускает новое действие,

Как узнать, запускает ли кнопка правильное действие?

Это то, что я имею до сих пор:

public class MainActivityTest extends ActivityUnitTestCase<MainActivity> {

    private Intent mMainIntent;


    public MainActivityTest() {
        super(MainActivity.class);
    }


    @Override
    protected void setUp() throws Exception {
        super.setUp();
        mMainIntent = new Intent(Intent.ACTION_MAIN);
    }

    @MediumTest
    public void testButtonActivityA () {
        MainActivity activity = startActivity(mMainIntent, null, null);
        Button buttonActivityA = (Button) activity.findViewById(com.project.R.id.button_activity_a);
        buttonVoice.performClick();
        Intent i = getStartedActivityIntent();
        assertNotNull(i);
        assertTrue(isFinishCalled());
    }
}

PS: isFinishedCalled () не работает, как это может быть, если я поднял новое полноэкранное действие?Спасибо,

1 Ответ

1 голос
/ 12 августа 2011

Сбой, потому что не вызывается метод finish ().

Вы должны закончить действие самостоятельно, в противном случае, когда вы открываете новое, оно поднимается вверх по «стеку», и исходное действие вызывает OnPause, но все еще «живое».finish () - это неявный вызов, который вы можете закодировать в свое приложение, чтобы уничтожить активность.

Пожалуйста, прочитайте о Жизненном цикле активности Android

Затем научитесь звонить когда вам нужно вызвать финиш ()

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...