消失时继续操作(无超时)

时间:2019-06-03 07:27:34

标签: android kotlin android-espresso android-uiautomator

此处是UI Automator和Espresso测试。此测试可以向下滑动,然后等待一秒钟。一秒钟后,它检查列表中的项目计数:

@Test
    fun swipeDown_randomLoadTraders_equalsLocaltemCount_UIAutomator() {
        onView(withId(swipeRefreshLayout))
                .perform((swipeDown()))
        mockServer.enqueue(MockResponse()
                .setResponseCode(200)
                .setBody(FileUtil.getStringFromFile(context, randomTraderStubName.stubName)));
        swipeRefreshLayout = uiDevice.findObject(UiSelector().resourceId("$applicationId:id/swipeRefreshLayout"))
        swipeRefreshLayout.waitUntilGone(1000)
        val localtemCount = recyclerView.adapter?.itemCount!!
        onView(withId(tradersRecyclerView))
                .check(matches(withItemCount(localtemCount)))
    }

问题在于那个方法

 swipeRefreshLayout.waitUntilGone(1000)

总是等待一秒钟。结果测试将总是在一秒钟后继续。但是当swipeRefreshLayout消失时,我需要继续测试。可能是一秒钟,但是下次可能是3秒或25秒。 swipeRefreshLayout消失时(没有超时),是否可以(通过UI Automator)

0 个答案:

没有答案