Почему активность не запускается в тесте Android Instrumentation (тест активности) с эспрессо?Android

Форум для тех, кто программирует под Android
Anonymous
Почему активность не запускается в тесте Android Instrumentation (тест активности) с эспрессо?

Сообщение Anonymous »

Мой тестовый класс:

Код: Выделить всё

@RunWith(AndroidJUnit4.class)
public class MainActivityTest {

@Rule
public ActivityScenarioRule rule = new  ActivityScenarioRule(MainActivity.class);
ActivityScenario scenario;

Context context = ApplicationProvider.getApplicationContext();

@Before
public void launchActivity() {
scenario = ActivityScenario.launch(MainActivity.class);
scenario.moveToState(Lifecycle.State.CREATED);
}

@Test
public void sendLocationButton_clicked_activateLongClickToastAppear() {
onView(withId(R.id.location_button)).perform(click());
onView(withText("Long press it")).inRoot(withDecorView(not(is(getActivity(context).getWindow().getDecorView())))).check(matches(isDisplayed()));
}

@After
public void tearDown() throws Exception {
scenario.close();
}
}
Ошибка:

Код: Выделить всё

java.lang.AssertionError: Activity never becomes requested state "[DESTROYED, RESUMED, CREATED, STARTED]" (last lifecycle transition = "PRE_ON_CREATE")
at androidx.test.core.app.ActivityScenario.waitForActivityToBecomeAnyOf(ActivityScenario.java:338)
at androidx.test.core.app.ActivityScenario.launchInternal(ActivityScenario.java:272)
at androidx.test.core.app.ActivityScenario.launch(ActivityScenario.java:195)
at androidx.test.ext.junit.rules.ActivityScenarioRule.lambda$new$0$ActivityScenarioRule(ActivityScenarioRule.java:70)
at androidx.test.ext.junit.rules.ActivityScenarioRule$$Lambda$0.get(Unknown Source:2)
at androidx.test.ext.junit.rules.ActivityScenarioRule.before(ActivityScenarioRule.java:103)
at org.junit.rules.ExternalResource$1.evaluate(ExternalResource.java:46)
at org.junit.rules.RunRules.evaluate(RunRules.java:20)
at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:325)
Это лишь часть ошибки, поскольку переполнение стека отклоняет такой огромный код.
Я просто хочу проверить, есть ли Toast появляется или нет при нажатии кнопки. Понятия не имею, что происходит. Пожалуйста помоги. Заранее спасибо.

Подробнее здесь: https://stackoverflow.com/questions/667 ... ty-test-wi

Вернуться в «Android»