Robotium测试总结
发布时间:2020-12-14 02:08:32 所属栏目:百科 来源:网络整理
导读:1、测试类要继承ActivityInstrumentationTestCase2测试类类名 2、构造方法中super("包名",测试类类名.class); 3、setUp方法中solo = new Solo(getInstrumentation(),getActivity()); 4、tearDown方法中 try { solo.finalize(); } catch (Throwable e) { e.pr
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)); 文章来源:http://www.52php.cn/article/p-xaiibxgg-y.html 作者:pugongying1988 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |