как проверить просмотр текста в диапазоне с помощью эспрессо Android - PullRequest
0 голосов
/ 07 июня 2018

Я знаю, что мы можем использовать expresso для проверки выходных данных вида: onView((withId(R.id.text_view_name))).check(matches(withText("text_value_here")));, чтобы увидеть, соответствуют ли выходные данные ожидаемым, но что, если мы хотим убедиться, что они находятся в определенном диапазоне значений?Например, не ниже 0.

Как написать тестовый код с помощью эспрессо, который гарантирует, что значение пользовательского интерфейса ниже, выше или в пределах определенного диапазона значений?

1 Ответ

0 голосов
/ 07 июня 2018

Это может быть легко сделано с помощью специального сопоставителя:

    public class TextViewValueMatcher extends TypeSafeMatcher<View> {
        @Override
        protected boolean matchesSafely(View item) {
            TextView textView = (TextView) item;
            String value = textView.getText().toString();
            boolean matching = <here your condition on the value>;
            return matching;
        }

        @Override
        public void describeTo(Description description) {

        }
    }

И затем используется как:

Espresso.onView(withId(<some_id>)).check(matches(new TextViewValueMatcher()));
...