Articles of андроид эспрессо

Espresso – утверждение TextView с асинхронными загруженными данными

Я пишу тест UI с Google Espresso для Android, и я зациклился на том, как утверждать текст TextView, содержимое которого асинхронно загружается из веб-службы. Мой текущий код: public class MyTest extends BaseTestCase<MyActivity>{ public void setUp() throws Exception { // (1) Tell the activity to load 'element-to-be-loaded' from webservice this.setActivityIntent(new Intent(Intent.ACTION_VIEW, Uri.parse("data://data/element-to-be-loaded"))); getActivity(); super.setUp(); } public […]

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

У меня по существу есть пользовательский IdlingResource, который принимает аргумент конструктора. Я не могу найти нигде, что действительно говорит о том, как его реализовать. Я пытаюсь использовать этот ответ: https://stackoverflow.com/a/32763454/1193321 Как вы можете видеть, требуется ViewPager, но когда я регистрирую IdlingResource в своем тестовом классе, я не уверен, как я могу получить свое мнение. Я […]

Тестовый тест эспрессо

Я изучаю аппаратное тестирование андроида с эспрессо. У меня есть приложение, в котором есть drawermenu, и есть меню под названием About. Я тестировал клик по этому пункту меню и содержимому активности. функции теста: @Test public void testNavigationDrawerAboutMenu() { onView(withId(R.id.drawer_layout)) .perform(DrawerActions.open()); //open drawer onView(withText("About")).perform(click()); onView(withId(R.id.aboutsptemail)).check(matches(withText(R.string.screen_about_support_email))); onView(withId(R.id.aboutcpright)).check(matches(isDisplayed())); onView(withId(R.id.aboutprivacy)).check(matches(isDisplayed())); onView(withId(R.id.abouttermsconditions)).check(matches(isDisplayed())); onView(withId(R.id.aboutsptemail)).perform(click()); } Теперь в последнем тексте есть встроенный […]

Espresso – щелкните элемент просмотра одного списка.

Я попытался сделать следующее: onView (allOf (withId (R.id.single_row_text), withText («Item1»))). Выполнить (click ()); Но все, что у меня есть, это: android.support.test.espresso.NoMatchingViewException: No views in hierarchy found matching: (with id: net.test.android:id/single_row_text and with text: is "Item1") If the target view is not part of the view hierarchy, you may need to use Espresso.onData to load it […]

Android Espresso, пробуждение устройства перед тестированием. Как использовать пользовательский манифест для тестирования?

Я пишу тесты с андроидами новой эспрессо-фреймворк и считаю, что он работает хорошо. Одна неприятная вещь (не особенно для эспрессо) заключается в том, что я должен убедиться, что мой экран бодрствует и разблокирован для тестов. Я нашел обходное решение (через различные источники), однако я не уверен, что лучший способ его интегрировать. Итак, это то, что […]

Espresso: return boolean, если вид существует

Я пытаюсь проверить, отображается ли представление с помощью Espresso. Вот какой-то псевдо-код, чтобы показать, что я пытаюсь: if (!Espresso.onView(withId(R.id.someID)).check(doesNotExist()){ // then do something } else { // do nothing, or what have you } Но моя проблема: .check(doesNotExist()) не возвращает boolean. Это просто утверждение. С UiAutomator я смог сделать что-то вроде этого: if (UiAutomator.getbyId(SomeId).exists){ ….. […]

Тест Espresso не работает с NoActivityResumedException часто

EDIT: Обновлено описание и сообщение об ошибке и добавлены некоторые изображения. Все еще есть эта проблема. У меня странная ошибка, которая возникает много раз при запуске тестов эспрессо. После нескольких успешных тестовых запусков тесты начинают сбой со следующего исключения: 06-23 13:04:48.438 info TestRunner failed: WhenNavigatingToReportsThenCorrectViewShouldBeShown(com.myapp.ui.views.MainActivityTest) 06-23 13:04:48.439 info TestRunner —– begin exception —– 06-23 13:04:48.441 […]

Щелкните по границам / координатам

Я знаю, что Espresso может щелкнуть по границам, как это делает UiAutomator . (Координаты x и y) Я прочитал документацию, но я не могу ее найти. Любая помощь приветствуется. благодаря редактировать Я нашел эту ссылку , но нет примеров, как ее использовать. Моей главной заботой в этом является UiController или как ее использовать.

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

Следующим является один из моих тестов на эспрессо. public void testLoginAttempt() { Espresso.onView(ViewMatchers.withId(R.id.username)).perform(ViewActions.clearText()).perform(ViewActions.typeText("nonexistinguser@krossover.com")); Espresso.onView(ViewMatchers.withId(R.id.username)).perform(ViewActions.clearText()).perform(ViewActions.typeText("invalidpassword")); Espresso.onView(ViewMatchers.withId(R.id.login_button)).perform(ViewActions.click()); // AFTER CLICKING THE BUTTON, A NEW ACTIVITY WILL POP UP. // Clicking launches a new activity that shows the text entered above. You don't need to do // anything special to handle the activity transitions. Espresso takes care of […]

Нажмите значок дома с эспрессо

Я пытаюсь щелкнуть значок дома в некоторых тестах эспрессо через: onView(withId(android.R.id.home)).perform(click()); Это отлично работает для Android> 3.0 – но не для старых версий, поскольку appcompat , похоже, не использует этот идентификатор для этого элемента. Какой хороший подход делать то, что я хочу сделать?