我有一个 Viewpager,它由相同片段视图的副本组成。您可以在它们之间滑动。我正在编写一个 Espresso 测试并尝试对每个页面的 id 进行断言,但它们显然是不明确的,因为加载了多个页面并且它们都共享相同的 id。我不想将视图寻呼机更改为一次仅加载一页。在我的应用程序中,这样做效率很低。
我还考虑过使用标签并用唯一的字符串标记每个视图,但随后我只是修改源代码以便我的测试能够正常工作。我不喜欢这样。使用 Espresso 检查 viewpager 页面内内容的正确方法是什么?
假设一次仅显示一个页面,您可以使用 swipeLeft/swipeRight 移动到某一页面,然后检查该页面中是否显示了正确的内容。
这里有一些例子 https://code.google.com/p/android-test-kit/source/browse/espresso/libtests/src/main/java/com/google/android/apps/common/testing/ui/espresso/action/SwipeActionIntegrationTest.java?r=c4e4da01ca8d0fab31129c87f525f6e9ba1ecc02.
e.g.
onView(withId(R.id.pager))
.perform(swipeLeft())
.check(matches(hasDescendant(withText("Position #2"))));
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)