我使用Robolectric 2.3测试Android应用。我在setOnLongClickListener
的视图上注册了一个监听器,我想通过模拟长按来测试该代码。在Robolectric中有辅助方法吗? Robolectric.clickOn
似乎做了一个正常的短期'轻按。
我确实看到我可以通过ShadowView
访问长按一下监听器,所以我想如果其他所有方法都失败,我可以手动调用回调。
答案 0 :(得分:2)
实际上View上有一个performLongClick()
,您应该可以从测试中调用它来启动操作。
这是robo自己的单元测试中的一个例子: https://github.com/robolectric/robolectric/blob/82202f264ce20ff449d5f8b26f227f88904d7643/robolectric/src/test/java/org/robolectric/shadows/ViewTest.java#L178