我有一个使用tablayout的自定义viewpager(由于原因而禁用了滑动)。内容根据选择的选项卡而变化。我想用浓缩咖啡测试一下: 1)单击特定选项卡 2)检查选项卡特定页面中的一些数据 我怎样才能做到这一点。我是意式浓缩咖啡的新手
答案 0 :(得分:20)
有几种方法可以做到这一点,一个简单的方法就是按标签标题选择元素,我使用这段代码:
Matcher<View> matcher = allOf(withText("TAB TITLE"),
isDescendantOfA(withId(R.id.customTab)));
onView(matcher).perform(click());
SystemClock.sleep(800); // Wait a little until the content is loaded
您只需要将匹配器调整到您的布局。 然后,检查内容。
例如:
onView(withId(R.id.someId)).check(matches(isCompletelyDisplayed()));
或:
onView(withText(R.string.someText)).check(matches(isCompletelyDisplayed()));
您可以在指定视图匹配器部分找到示例:http://developer.android.com/intl/es/training/testing/ui-testing/espresso-testing.html
如果您使用RecyclerView显示标签的内容,请查看以下内容: Espresso RecyclerView inside ViewPager
答案 1 :(得分:-3)
当你清楚地知道用户界面中的预期时,应该使用Espresso,这样你就可以验证它。
在您的情况下,要转到任何标签页,您可以使用查看操作来点按该标签。 要验证数据,首先您应该知道该选项卡上预期的数据,然后使用匹配器检查它们是否显示。