Articles of эспрессо

Есть ли способ обхода эспрессо с Lollipop (Android 21)?

Попытка запустить тест с кодом, связанным с UI, с использованием эспрессо (т.е. GoogleInstrumentationTestRunner ) на Nexus 7 с Lollipop дает следующую ошибку: java.lang.IllegalStateException: This message cannot be recycled because it is still in use. at android.os.Message.recycle(Message.java:279) at com.google.android.apps.common.testing.ui.espresso.base.UiControllerImpl.loopUntil(UiControllerImpl.java:468) at com.google.android.apps.common.testing.ui.espresso.base.UiControllerImpl.loopMainThreadUntilIdle(UiControllerImpl.java:337) at com.google.android.apps.common.testing.ui.espresso.ViewInteraction$1.run(ViewInteraction.java:94) at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:422) at java.util.concurrent.FutureTask.run(FutureTask.java:237) at android.os.Handler.handleCallback(Handler.java:739) at android.os.Handler.dispatchMessage(Handler.java:95) at android.os.Looper.loop(Looper.java:135) at android.app.ActivityThread.main(ActivityThread.java:5221) at […]

Как создать тестовые отчеты из Espresso

У меня есть тестовый проект, успешно работающий на Jenkins с использованием Ant. Я вижу результаты теста на выходе консоли, но как мне создать отчет?

Разблокируйте экран эмулятора, используя эспрессо

Я разрабатываю свое первое приложение для Android, и я настраивал сервер CI. Мои тесты на эспрессо хорошо работают на моей машине, но ошибки Travis со следующими Java.lang.RuntimeException: ожидал, что корень иерархии представлений будет иметь фокус окна и не будет запрашивать макет более 10 секунд. Кажется, мне нужно разблокировать экран эмулятора, прежде чем запускать тесты. Для […]

Как нажать на галерею Android с эспрессо

В настоящее время у нас есть приложение для Android, которое мы тестируем с помощью Espresso. Одной из функций, которые мы хотим проверить, является выбор изображения / изображения из локальной галереи изображений. Мы можем полностью охватить представление галереи, но затем не можем выбрать из Recent, Downloads, Gallery в появившемся окне. Фрагмент о том, как мы получили, […]

Espresso – typeText () не работает корреляция, иногда буквы отсутствуют

Я начинаю свою деятельность по регистрации, и я использую в тесте Espresso: onView(withId(R.id.username)).perform(typeText("USERNAME")); Я ожидаю, что текст в поле будет «USERNAME», но иногда я получаю «SERNAME», другие – «UERNAME». В большинстве случаев он работает, но иногда он терпит неудачу, особенно после перезагрузки телефона. Вот пример кода для воспроизведения ошибки: https://github.com/neoranga55/CleanGUITestArchitecture

Как щелкнуть кнопку закутки в эспрессо-тестировании?

Я не верю, что это обманный вопрос. Я пишу простой тест эспрессо, и часть его включает нажатие кнопки «Ok» в закусочной. Espresso.onView(allOf(withId(android.support.design.R.id.snackbar_text), withText(R.string.permission_snackbar))) .check(matches(isDisplayed())); Espresso.onView(withText("Ok")).perform(click()); Это бросает Android.support.test.espresso.PerformException: Ошибка выполнения «одного щелчка» в представлении с текстом: «Хорошо». Вызывается: java.lang.RuntimeException: действие не будет выполняться, потому что целевое представление не соответствует одному или нескольким из следующих ограничений: […]

Прокрутка для просмотра была предпринята, но представление не отображается.

С помощью Espresso я пытаюсь прокручивать текст внутри линейного листа, но я получаю это исключение: android.support.test.espresso.PerformException: Error performing 'scroll to' on view 'with id: org.ligi.gobandroid_hd:id/final_points'. at android.support.test.espresso.PerformException$Builder.build(PerformException.java:83) at android.support.test.espresso.base.DefaultFailureHandler.getUserFriendlyError(DefaultFailureHandler.java:70) at android.support.test.espresso.base.DefaultFailureHandler.handle(DefaultFailureHandler.java:53) at reporting.SpooningFailureHandler.handle(SpooningFailureHandler.java:31) at android.support.test.espresso.ViewInteraction.runSynchronouslyOnUiThread(ViewInteraction.java:184) at android.support.test.espresso.ViewInteraction.doPerform(ViewInteraction.java:115) at android.support.test.espresso.ViewInteraction.perform(ViewInteraction.java:87) at org.ligi.gobandroidhd.uitest.TheGameScoringActivity.testThatTapToMarkWorks(TheGameScoringActivity.java:65) at java.lang.reflect.Method.invoke(Native Method) at java.lang.reflect.Method.invoke(Method.java:372) at android.test.InstrumentationTestCase.runMethod(InstrumentationTestCase.java:214) at android.test.InstrumentationTestCase.runTest(InstrumentationTestCase.java:199) at android.test.ActivityInstrumentationTestCase2.runTest(ActivityInstrumentationTestCase2.java:192) at junit.framework.TestCase.runBare(TestCase.java:134) at […]

RunTimeException в эспрессо Android при выборе spinner в диалоговом окне

У меня есть активность, когда какой-то диалог открыт. В этом диалоговом окне есть счетчик. Я хочу выбрать конкретное значение в этом счетчике, но я получаю следующее исключение: java.lang.RuntimeException: Waited for the root of the view hierarchy to have window focus and not be requesting layout for over 10 seconds. If you specified a non default […]

Тестирование ошибок EditText с помощью Espresso на Android

Я хочу проверить, есть ли в поле EditText сообщение об ошибке (установлено с помощью editText.setError («Не может быть пустым!»)). Я создал тестовый пример Espresso с новой функцией AndroidStudio 2.2 для записи тестов Espresso. Таким образом, код в значительной степени автогенерируется. Но пока он проверяет, отображается ли только текст editText. @RunWith(AndroidJUnit4.class) public class CreateNoteActivityTitleCannotBeBlank { @Rule […]

Значение файла String для чтения эспрессо

Я хочу сохранить файл Sting и Raw в моем модуле androidTest и прочитать его, когда это необходимо в тесте Espresso. Я держу папку res в androidTest и могу синхронизировать и генерировать R-файл для этого же. Но когда я попытался получить доступ к строковому ресурсу, используя getTargetContext.getString(R.string.product_name) или с помощью mAcitivityRule.getActivity.getString(R.string.product_name) Я получаю какое-то случайное значение, […]