您的位置:首页 > 其它

robotium 中通过id获取 View 以及进行相应的操作

2016-02-26 00:00 507 查看
robotium 中id的几种表现形式

1)字符串形式:例如id/btn_example,源码中的布局里些的hierachy 中看见的都是这种。

2)数字形式:例如0x7f0700D,打开R.java里面体现了String形式和int形式对应关系。

白盒测试中,直接使用R.id的形式来调用

View view =solo.getView(R.id.btn_example);//获取view
solo.clickOnView(view);//点击


黑盒测试中,R.id 不可见

Activity act =solo.getCurrentActivity();//获取Activity
int id =act.getResources().getIdentifier("btn_example","id",act.getPackageName());//通过String 的id 获取int 的id
View View =act.findViewById(id);//获取view
solo.clickOnView(view);//点击


对于方法可以封装,方法如下:

private boolean clickById(String id) throws Exception{

if(id==""){

return false;
}
try{
Activity act =solo.getCurrentActivity();//获取当前的activity
int id = act.getResource().getIdentifier(id,"id",solo.getCurrentActivity().getPackageName());//获取id
View view = solo.getView(id);//得到view
solo.clickOnView(view);//点击View

}catch(Exception ex ){
log.e();
}
return true;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: