如何使用 Espresso 测试片段是不是可见
Posted
技术标签:
【中文标题】如何使用 Espresso 测试片段是不是可见【英文标题】:How to test if a fragment is visible with Espresso如何使用 Espresso 测试片段是否可见 【发布时间】:2019-02-02 07:51:47 【问题描述】:我用一个按钮写了一个非常简单的Activity
。单击按钮时,我将启动一个新的Fragment
。现在我想在我的 Espresso UI 测试中测试这个逻辑。所以我为我的Activity
写了这个 UI 测试
@RunWith(androidJUnit4::class)
@LargeTest
class MainMenuUiTest
@get: Rule
val activityTestRule: ActivityTestRule<MainActivity> = ActivityTestRule(MainActivity::class.java)
@Test
fun switchToFragment()
onView(withId(R.id.btn)).perform()
如何测试单击按钮时我的Fragment
是否显示?
【问题讨论】:
【参考方案1】:尝试以下方法:
@Test
fun switchToFragment()
onView(withId(R.id.btn)).perform(click())
onView(withId(R.id.fragment)).check(matches(isDisplayed()))
如果您刚刚了解 Espresso,official guide 是一个不错的起点。另外,这里是Espresso cheat sheet。
【讨论】:
以上是关于如何使用 Espresso 测试片段是不是可见的主要内容,如果未能解决你的问题,请参考以下文章
如何使用 Espresso 将时间设置为 MaterialDateTimePicker
如何使用 IntentsTestRule 和 launchFragmentInContainer 测试从片段发送的意图