如何从Robotium查看我的png是否出现在屏幕上?

时间:2014-09-24 15:28:17

标签: java android android-drawable robotium

我创建了另一种方法:

public boolean exampleEdTxt1(){
 try{
  solo.getCurrentActivity().getResources().getDrawable(R.drawable.action_drw);
  return true;
 }
 catch(AssertionError e){
  return false;
 }
}

但是,当测试运行时,代码

assertTrue(exampleEdTxt1());

始终返回成功和代码

assertFalse(exampleEdTxt1());

总是会失败。

如何从Robotium查看我的png出现在屏幕上?

2 个答案:

答案 0 :(得分:1)

尝试使用.isShown()

solo.getCurrentActivity().getResources().getDrawable(R.drawable.action_drw).isShown();

这个断言用来检查我的图像是否显示:

assertEquals(true, solo.getCurrentActivity().findViewById(R.id.getting_started_image_1).isShown());

希望有所帮助

我在这里检查imageView

Boolean isVisible = (Boolean) solo.getCurrentActivity().findViewById(R.id.imageView1).isShown();
        assertTrue(isVisible);

这是检查drawable(图像)

Boolean isVisible2 = (Boolean) solo.getCurrentActivity().getResources().getDrawable(R.drawable.image).isVisible();
        assertTrue(isVisible2);

我使用的xml中的imageView:

<ImageView
    android:id="@+id/imageView1"
    android:layout_width="186dp"
    android:layout_height="90dp"
    android:src="@drawable/image" />

答案 1 :(得分:0)

对于

Boolean isVisible2 = (Boolean) solo.getCurrentActivity().getResources().getDrawable(R.drawable.image).isVisible();

assertTrue(isVisible2);

总是返回成功(即使屏幕上没有可绘制的)和代码

assertFalse(isVisible2);

总是会失败。