Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby-on-rails-4/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 意式浓缩咖啡和ImageButton一起使用吗?_Android_Android Espresso - Fatal编程技术网

Android 意式浓缩咖啡和ImageButton一起使用吗?

Android 意式浓缩咖啡和ImageButton一起使用吗?,android,android-espresso,Android,Android Espresso,我一直在使用测试用例来单击ImageButton,但我总是遇到同样的异常: 由于目标视图与以下一个或多个约束不匹配,因此将不执行操作: 在屏幕上向用户显示 目标视图:“ImageButton{id=2131296372,res name=create\u an\u account,… 另一方面,它与一个按钮一起工作。这是代码: Espresso.onView(viewmachers.withId(R.id.create\u an\u account)).perform(ViewActions.o

我一直在使用测试用例来单击ImageButton,但我总是遇到同样的异常:

由于目标视图与以下一个或多个约束不匹配,因此将不执行操作: 在屏幕上向用户显示 目标视图:“ImageButton{id=2131296372,res name=create\u an\u account,…

另一方面,它与一个按钮一起工作。这是代码:

Espresso.onView(viewmachers.withId(R.id.create\u an\u account)).perform(ViewActions.onClick());


Gradle:
com.jakewharton.espresso:espresso:1.1-r4-patched

确保按钮在屏幕上可见

如果按钮被软键盘覆盖或在屏幕外(例如,您使用的是ScrollView),则必须首先确保按钮可见

如果按钮位于键盘下方-隐藏键盘。 如果按钮不在屏幕上-向下滚动以使按钮可见


与用户不能单击不可见按钮相同-浓缩咖啡也不能。

在执行测试方法之前,在设置方法中设置睡眠时间的技巧

`


`

是的,它是可见的:
单击时它真的在屏幕上可见吗?此错误消息告诉它不可见:
视图与以下一个或多个约束不匹配:在屏幕上显示给用户
问题是,代码的执行是在仿真器或设备打开应用程序之前完成的这是一把写睡眠时间的“大砍刀”。理论上,浓缩咖啡应该等待视图完全加载。
public void setUp(){
   super.setUp();
   try {
          Thread.sleep(1000);             
   } catch (InterruptedException e) {
            e.printStackTrace();
   }
 }