robotium之无法识别控件点击
来源:互联网 发布:iphone7怎么关闭4g网络 编辑:程序博客网 时间:2024/05/21 11:12
手机测试比较常用的就是点击,不管事按钮,是图片,是输入框,等等等等都需要点击;
1、正常点击:solo.clickOnText("^登录?")
正常输入:solo.waitForText("^账号?", 1, 10000);
solo.enterText(0, "00195852");
solo.enterText(1, "password");
2、登录按钮时图片,无法用上面方法怎么办?
clickOnScreen(float x, float y)
x,y就得你手机打开开发者选项中的【指针位置】手指放上去会显示
那如果是固定位置,比如1/2处。右下角。左上角;那就可以获取手机屏幕了代码如下:
//1、导入包import android.util.DisplayMetrics;//2、获取手机屏幕分辨率的类private DisplayMetrics dm ;//3、初始化参数dm = new DisplayMetrics();solo.getCurrentActivity().getWindowManager().getDefaultDisplay().getMetrics(dm) ;//4、获得手机的宽带和高度像素单位为pxString str = "手机屏幕分辨率为:" + dm.widthPixels+" * "+dm.heightPixels;
点击时候如果是最中间clickOnScreen(dm.widthPixels/2,dm.heightPixels/2)
3、通过ID来点击代码实现如下:
private int clickCtrlById(String s, int t){ int ctrl; View v; if( s == ""){ return -1; } ctrl = solo.getCurrentActivity().getResources().getIdentifier(s,"id",solo.getCurrentActivity().getPackageName()); v = solo.getView(ctrl); solo.clickOnView(v); solo.sleep(t); return 0;}private int enterTextById(String id, String s, int t ){ int ctrl; EditText v; if( s == ""){ return -1; } ctrl = solo.getCurrentActivity().getResources().getIdentifier(id,"id",solo.getCurrentActivity().getPackageName()); v = (EditText) solo.getView(ctrl); solo.enterText(v, s) ; solo.sleep(t); return 0;}
其调用方法为:
clickCtrlById("ID", 10000) ;
enterTextById("ID","要输入的内容",10000)
如果碰到还不能点击的情况可以再反映给我,我会帮你想办法
以上如果非要用id点击还可以使用以下方法获取ID但是意义不大,为什么呢?因为知道的string直接使用第一种办法点击就完事了,但是技术还是分享以下,也有可取之处
Activity act=solo.getCurrentActivity();//获取Activityint id=act.getResources().getIdentifier("^登录?", "id", act.getPackageName());//通过String的id获取int的idView view=act.findViewById(id);//获取Viewsolo.clickOnView(view);//点击
这段代码虽然没啥用,但是如果你需要找到对应的ID,然后用用id做什么事情还是可取的;
以上就是按钮点击的分享内容;
0 0
- robotium之无法识别控件点击
- robotium点击自定义控件
- robotium之对象识别
- robotium之自定义控件
- robotium 黑盒 获取id点击控件
- robotium无法截取到控件的问题
- 无法点击listView中的控件
- Robotium对象识别
- Robotium 5.0.1 源码解析之控件搜索
- Robotium 5.0.1 源码解析之控件搜索
- Robotium 5.0.1 源码解析之控件搜索
- Robotium 5.0.1 源码解析之控件搜索
- Robotium之Android控件定位实践和建议
- Robotium 控件搜索原理
- gridview无法点击之谜
- Android结合robotium实现自定义waitForText(String text),解决控件无法找到问题
- 自动化测试之控件点击
- 关于IE中超链接绝对定位无法识别点击区域
- 【codevs1690】开关灯【线段树】
- myeclipse jsp页面不提示错误
- RMAN 配置归档日志删除策略
- java事务处理
- java单例模式之深入浅出
- robotium之无法识别控件点击
- Android Sensor感应器介绍(三)获取用户移动方向,指南针原理
- robotium之Java读取excel2010
- C语言易混易错知识点
- robotium之读取excel
- MySQL的btree索引和hash索引的区别
- robotium之基本操作和log操作
- QTP之轻松写入html log
- QTP测试之With秒用