码迷,mamicode.com
首页 > 其他好文 > 详细

转一个使用robotium的基本步骤

时间:2014-10-10 17:24:14      阅读:318      评论:0      收藏:0      [点我收藏+]

标签:io   使用   ar   sp   art   on   cti   ad   时间   

1、测试类要继承ActivityInstrumentationTestCase2<测试类类名> 


2、构造方法中super("包名", 测试类类名.class); 


3、setUp方法中solo = new Solo(getInstrumentation(), getActivity()); 


4、tearDown方法中 
try { 
solo.finalize(); 
} catch (Throwable e) { 
e.printStackTrace(); 

getActivity().finish(); 
super.tearDown(); 


5、点击自动化 
clickOnMenuItem("菜单名") 
clickInList(列表行数) 注:从1开始 
clickOnText("(?i).*?test.*") 点击文本 
clickLongOnText("Note 2") 长时间点击文本 
clickOnButton("按钮名")   点击按钮 


6、输入自动化 
enterText(号,"输入的内容") 


7、屏幕控制 
setActivityOrientation(Solo.LANDSCAPE或Solo.PORTRAIT) 控制屏幕横向或纵向显示 


8、跳转 
goBack() 模仿硬返回键 
goBackToActivity("Activity名") 跳到指定的Activity 


9、判断 
判断当前是否是指定的Activity 
assertCurrentActivity("测试提示", "Activity名"); 
搜索指定文本是否存在 
searchText("搜索文本")或searchText("(?i).*?note 1 test") 后面这个是正则表达式 


10、获取 
(EditText) solo.getView(R.id.EditText01); 
(TextView) solo.getView(R.id.TextView01); 
ArrayList currentTextViews = solo.getCurrentTextViews(outputField); 


11、点击按钮等测试中需要注意2点: 
(1)真机测试时发现,屏保后点击按钮测试会报找不到该按钮,也就是点不中的意思,看来测试机器人还真仿真啊。 
(2)点击按钮后有个延迟的过程,以后的测试需要循环等待一段时间,否则直接进入下面的测试后误报错错误,此处处理示例如下: 
// 点击按钮开启服务 
solo.clickOnButton(butStartService); 
// 判断指定服务是否存在 
long start = System.currentTimeMillis(); 
while (!isServiceStarted(SERVICE_PACKAGE_NAME)) { 
    try { 
        Thread.sleep(1000); 
    } catch (InterruptedException e) { 
    } 
    if ((System.currentTimeMillis() - start) > TIMEOUT) { 
        break; 
    } 

assertTrue("没有开启服务", isServiceStarted(SERVICE_PACKAGE_NAME));

转一个使用robotium的基本步骤

标签:io   使用   ar   sp   art   on   cti   ad   时间   

原文地址:http://www.cnblogs.com/xiao-kkp/p/4016126.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!