robotium本人最近在做关于手机应用的自动化测试,想请教目前在这方面有哪些实现自动化的工具,比如 Robotium,QTP

robotium  时间:2021-06-23  阅读:()

robotium判断是否有点击按钮

常见的Robotium测试的问题总结: 1、Robotium的测试类ActivityInstrumentationTestCase2继承了TestCase类,即robotiom的测试类是junit3的实例,并没有junit4的特征,比如通过annotate的方式来识别子类的新特征,没不能实现@beforeclass,@afterclass等特征。

只能通过写setup和teardown,以及test开头的测试用例的方式进行测试case书写。

2、有些button没有string,没有text,只能通过index来click这样很不直观,而且button的index并不是固定的,有可能随着 控件重新加载,顺序也有可能发生变化,无法保证测试结果。

查看了robotium源码,发现大多数click方法最终都是通过传入参数转成view,再调 用clickOnView,于是参照着写了一个通过button的ID来click的方法。

Button的ID需要查看测试对象的源码中获取。

比如导航中 就有菜单栏大多数据button就是这种类型的。

3、有的activity点击后不能获取焦点,可以通过另外的方式获取activity的内容,比如Activity act = solo.getCurrentActivity();获取当前的activity,然后通过act.findViewById的方式获取控件。

4、多个屏幕的情况,可以通过滚屏的方式滑动,solo.scrollToSide(Solo.LEFT),如果多屏属于一个activity,则不需要滑动也能运行case获取数据。

5、有时text view或者button的click方法会失效,咋办?答案是在被测程序的AndroidManifest.xml文件里加上这么一句:<supports-screens android:anyDensity="true"/>就行了。

唉,当时为了找到这个解决方法可浪费了俺不少时间啊,最后在官网上找到答案了。

6、如果要想在robotium的测试程序里读写SD card肿么办?答案是在被测程序的AndroidManifest.xml文件里加上<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"></uses-permission> <uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS"></uses-permission>。

注意是在被测程序里加上,在测试程序本身的manifest文件里加会很坑爹的。

7、iew动态添加item如何判断添加成功。

可从添加前及添加后Item个 数判断,先确定添加item的属性,再通过相应的方法获取item。

比如添加一个item可能需要三个iew,那么通过 getCurrentTextViews(View)前后获取到的个数差就相差三个。

比如添加黑名单到黑名单列表。

(1)有的listView只有web,或者主要是文本,可以通过getItemAtPosition(i).toString()的方法获取第几行的内容。

solo.clickOnText(chooseProvPage.getListView().getItemAtPosition(i).toString()); (2)有的listView包含多个testView或者button,可以通过findViewById的方法得到某一行的一项的内容。

8、无法捕获Toast,这个有点不明白。

大概实验了一下,可以使用waitForText这个函数来捕获文字,这个方法返回值是布尔型的,所以返回true就是找到了。

9、结果判断 (1)waitForText 该方法适用于点击操作后需要一点时间才返回结果的结果判断。

比如联网操作,可以设置适当的延时,等待返回结果,判断结果更加正确。

(2)assertActivity 该方法适用于activity时,可以判断点击操作切换Activity是否正确,可以与waitfortext配合使用。

(3)searchText+assert 当有editText时,输入内容后,可通过searchText查找输入内容是否是预期结果,再将返回结果判断。

注:有些editText的内容无法通过searchText,原因暂时没找到。

比如:手动添加黑名单时的名称及号码的输入框。

八、Robotium项目的运行: 有两种方式,一种是通过eclipse;一种是通过命令行。

1、 eclipse Run as Android JUnit Test,可以跑整个测试工程,也可以跑单个测试用例。

2、命令行 adb install ****Test.apk adb shell am instrument testpackagename/android.test.InstrumentationTestRunner

robotium 怎么实现长按一定时间

常规的方式是不行的,因为跨进程了 调系统服务可以实现 方式1: private static final String END_CALL="service call phone 5"; private static final String CALL = "service call phone 2 s16 "; public static void EndCall(){ try

android studio怎么写robotium工程

楼主似乎没有用IDE…如果有eclipse的话右击工程,android tools,export signed apk,并使用和test同样的证书签名settings。

但是setting又是一个比较特殊的应用,换了自己的签名会挂掉(和系统的不一样了嘛),改包名吧,或者换个东西测试。

如果非要蛋疼地测试settings你得自己重做ROM,或者把原系统的几个jar掏出来一起编译,具体哪几个可以搜索systemui和frameworkres美化教程,原理一样的~

如何用robotium测试系统自带的应用

的自动化测试能力延伸到移动应用程序领域,例如 Jamo 、 DeviceAnywhere ; Robotium支持最火爆的Android平台; 可以考虑使用专门的手机自动化测试工具,例如Test...

本人最近在做关于手机应用的自动化测试,想请教目前在这方面有哪些实现自动化的工具,比如 Robotium,QTP

你说的这两个工具是目前最常用的了,此外还有TestQuest、mShell等等…… QTP的通用性比较强,适合各种平台,HP 并没有在 QTP 的安装包中提供针对手机应用的插件,但是 HP 的一些合作伙伴把 QTP 的自动化测试能力延伸到移动应用程序领域,例如 Jamo 、 DeviceAnywhere ; Robotium支持最火爆的Android平台; 可以考虑使用专门的手机自动化测试工具,例如TestQuest、mShell之类的 / 另外,QTP也有一些第三方的专门测试手机应用的插件,例如Jamo 、 DeviceAnywhere的解决方案

昔日数据月付12元起,湖北十堰机房10M带宽月付19元起

昔日数据怎么样?昔日数据是一个来自国内服务器销售商,成立于2020年底,主要销售国内海外云服务器,目前有国内湖北十堰云服务器和香港hkbn云服务器 采用KVM虚拟化技术构架,湖北十堰机房10M带宽月付19元起;香港HKBN,月付12元起; 此次夏日活动全部首月5折促销,有需要的可以关注一下。点击进入:昔日数据官方网站地址昔日数据优惠码:优惠码: XR2021 全场通用(活动持续半个月 2021/7...

宝塔面板批量设置站点404页面

今天遇到一个网友,他在一个服务器中搭建有十几个网站,但是他之前都是采集站点数据很大,但是现在他删除数据之后希望设置可能有索引的文章给予404跳转页面。虽然他程序有默认的404页面,但是达不到他引流的目的,他希望设置统一的404页面。实际上设置还是很简单的,我们找到他是Nginx还是Apache,直接在引擎配置文件中设置即可。这里有看到他采用的是宝塔面板,直接在他的Nginx中设置。这里我们找到当前...

SugarHosts糖果主机,(67元/年)云服务器/虚拟主机低至半价

SugarHosts 糖果主机商也算是比较老牌的主机商,从2009年开始推出虚拟主机以来,目前当然还是以虚拟主机为主,也有新增云服务器和独立服务器。早年很多网友也比较争议他们家是不是国人商家,其实这些不是特别重要,我们很多国人商家或者国外商家主要还是看重的是品质和服务。一晃十二年过去,有看到SugarHosts糖果主机商12周年的促销活动。如果我们有需要香港、美国、德国虚拟主机的可以选择,他们家的...

robotium为你推荐
手机软件开发工具手机app一般用什么 软件开发webservice框架什么是webservice,什么情况下使用,如何使用comexception电脑出现ConnectException: 是什么原因?腾讯合作伙伴大会腾讯的合作伙伴都有特斯拉model3降价特斯拉股价为何暴跌?特斯拉model3降价小鹏P7和特斯拉Model 3,买哪个更加划算?特斯拉model3降价特斯拉model 3中国有补贴吗cc防火墙web防火墙有什么作用validdatevalid use date 什么意思怎么保存整个网页怎样完整的保存一个网页
购买域名和空间 狗爹 edis 网站被封 eq2 中国电信测速网 服务器监测 东莞服务器 四核服务器 怎么建立邮箱 卡巴斯基免费试用版 七夕快乐英语 河南移动梦网 我的世界服务器ip 国外在线代理服务器 中国电信测速网站 广州虚拟主机 atom处理器 万网主机 大化网 更多