У меня есть тест пользовательского интерфейса, который нажимает кнопку, а затем запускает новую активность в своем onClickListener. Тест проверяет, отправлено ли ожидаемое намерение или нет.
Моя проблема в том, что я хочу проверить, отправлено ли ожидаемое намерение без фактического запуска действия. Потому что я обнаружил, что новая активность инициализирует свое состояние и делает последующие тесты ненадежными.
Я знаю, что есть два Espresso Intent. api, то есть intended
и intending
, но оба не соответствуют моим потребностям. intended
API фактически запускает целевую активность, а intending
API не запускает активность, но вызывает onActivityResult
обратный вызов, который мне тоже не нужен. Потому что я боюсь, что код внутри onActivityResult
может вызвать очередную ненадежность. Также intending
не утверждает, отправлено ли совпадающее намерение, он просто вызывает обратный вызов onActivityResult
при обнаружении совпадающего намерения, что означает, что я должен проверить, вызывается ли onActivityResult
или нет!
Есть ли чистый способ достичь того, чего я хочу?