android - Android测试一个函数正在被滚动调用
问题描述
我有这个 ScrollChangedListener
var scrolledOnce = false
scrollView.setOnScrollChangeListener(object : View.OnScrollChangeListener{
override fun onScrollChange(
v: View?,
scrollX: Int,
scrollY: Int,
oldScrollX: Int,
oldScrollY: Int
) {
if(!scrolledOnce) {
scrolledOnce = true
handler.postDelayed(Runnable {
scrolledOnce = false
isCalled()
}, 1000)
}
}
})
这是对此的测试
@get:Rule
var activityScenarioRule = activityScenarioRule<MainActivity>()
@Test
fun checkScrollEvent(){
Espresso.onView(ViewMatchers.withId(R.id.scrollVw)).perform(ViewActions.swipeDown())
}
我想验证 isCalled() 是否被调用。我该怎么做?
解决方案
我想你可能想在滚动视图上向上滑动而不是向下滑动。
onView(withId(R.id.scrollVw).performViewActions.swipeUp())
onView(withText("The next item").check(matches(isDispalyed())
推荐阅读
- ocr - 如何使用 tesseract 从图像中读取文本。我找不到好的选择
- reactjs - 如何创建一个包含由另一个接口定义的对象数组的接口?
- r - 这种情节是什么,我该如何改变它的颜色
- testing - 邮递员:检查日期等于昨天的日期
- jquery - 包含带有 CDN(完整性和跨域)错误的 JQuery 和 Bootstrap?
- jenkins - 如何在 Jenkins 脚本控制台中包含共享库?
- java - 应用程序终止后启动闪屏
- delphi - Delphi Convert 返回无效类型
- sql - oracle中如何将作业状态从Scheduled更改为Running状态
- javascript - Fabric.js getObjects() 按标签或类型