我想使用Robolectric
在performclick
的按钮上测试recyclerview
,我希望看到它可以打开我想要的activity
。这就是我所做的但这不允许我单击一个按钮。
ActivityController<MyActivity> activityController = Robolectric.buildActivity(MyActivityclass);
activityController.create().start().visible();
ShadowActivity myActivityShadow = shadowOf(activityController.get());
RecyclerView currentRecyclerView = ((RecyclerView) myActivityShadow.findViewById(R.id.myrecyclerid));
currentRecyclerView.getChildAt(0).performClick();
答案 0 :(得分:1)
我记不清了,但具体说来是Robolectric
,它不调用视图onMeasure
onLayout
或以 0dp 大小调用它。
但是,这是让RecyclerView
知道他的LayoutManager
应该开始夸大项目以将其显示在屏幕上的关键。
您可以在测试中以一些大数字呼叫onMeasure
中的RecyclerView
,然后它将触发在屏幕上添加项目。
但是,我将这种测试留给浓缩咖啡,因为它是真正的高级测试。