Android 手机自动化测试工具有哪些?
安卓手机自动化测试工具通常来说是匹配的系统设置软件以及基础的工具,通常就是通过软件来测试当前的状态。
UiAutomator也是Android提供的自动化测试框架,基本上支持所有的Android事件操作,对比Instrumentation它不需要测试人员了解代码实现细节(可以用UiAutomatorviewer抓去App页面上的控件属性而不看源码)。基于Java,测试代码结构简单、编写容易、学习成本,一次编译,所有设备或模拟器都能运行测试,能跨App。
Appium是最近比较热门的框架,社区也很活跃。
android app自动化测试工具有哪些
1、Monkey是Android
SDK自带的测试工具,在测试过程中会向系统发送伪随机的用户事件流,如按键输入、触摸屏输入、手势输入等),实现对正在开发的应用程序进行压力测试,也有日志输出。实际上该工具只能做程序做一些压力测试,由于测试事件和数据都是随机的,不能自定义,所以有很大的局限性。
2、MonkeyRunner也是Android
SDK提供的测试工具。严格意义上来说MonkeyRunner其实是一个Api工具包,比Monkey强大,可以编写测试脚本来自定义数据、事件。缺点是脚本用Python来写,对测试人员来说要求较高,有比较大的学习成本。
3、Instrumentation是早期Google提供的Android自动化测试工具类,虽然在那时候JUnit也可以对Android进行测试,但是Instrumentation允许你对应用程序做更为复杂的测试,甚至是框架层面的。通过Instrumentation你可以模拟按键按下、抬起、屏幕点击、滚动等事件。Instrumentation是通过将主程序和测试程序运行在同一个进程来实现这些功能,你可以把Instrumentation看成一个类似Activity或者Service并且不带界面的组件,在程序运行期间监控你的主程序。缺点是对测试人员来说编写代码能力要求较高,需要对Android相关知识有一定了解,还需要配置AndroidManifest。xml文件,不能跨多个App。
4、UiAutomator也是Android提供的自动化测试框架,基本上支持所有的Android事件操作,对比Instrumentation它不需要测试人员了解代码实现细节(可以用UiAutomatorviewer抓去App页面上的控件属性而不看源码)。基于Java,测试代码结构简单、编写容易、学习成本,一次编译,所有设备或模拟器都能运行测试,能跨App(比如:很多App有选择相册、打开相机拍照,这就是跨App测试)。缺点是只支持SDK
16(Android
4。1)及以上,不支持Hybird
App、WebApp。
5、Espresso是Google的开源自动化测试框架。相对于Robotium和UIAutomator,它的特点是规模更小、更简洁,API更加精确,编写测试代码简单,容易快速上手。因为是基于Instrumentation的,所以不能
Android 手机自动化测试工具有哪几种
基于优秀的图像对比库opencv的测试工具,测试脚本使用Python编写,非常强大。如果你的app没有源码,可以选择它;或者你想做系统测试(跨app的测试),也可以选择它。其它的还是用下面说的那些个吧。
基于优秀的图像对比库opencv的测试工具,测试脚本使用Python编写,非常强大。如果你的app没有源码,可以选择它;或者你想做系统测试(跨app的测试),也可以选择它。其它的还是用下面说的那些个吧。
我通过其核心包sikuli-script。jar实现了android的sikuli化,暂时不打算开源。其实原理挺简单的,认真看过sikuli源码的应该都能写出来。
看lz的意思应该只是想问应用层的,我来说点应用层的
先说说开源的吧:
Robotium
Monkeyrunner
Robolectric
还有个新兴的测试工具,以前在GitHub看到,现在找不到了,好像是BDD类型的语法;现在还不成熟。
另外基于web的测试也有基于Selenium
Webdriver
的Android
WebDriver:
基于Remote
Server的:官方提供了java接口的,但是Python版的官方里面却没有。我非常喜欢Python,所以自己实现了并且开源到了GitHub:https://github。com/truebit。。。
有问题大家可以提到上面
基于Instrumentation的:已经在Android
r14里面可以安装了
不开源的就多了,不过我见过的一般是以下几种思路:
基于Android
Instrumentation框架:
基于Robotium,比如bitbar的产品:http://bitbar。com/products
基于Instrumentation,那就海了去了,很多公司自家写的工具都基于这个;另外Robotium就是基于这个的
基于Android
lib层的各种命令,比如sendevent,getevent,
monkey,
service这些,然后用各种语言封装
既然说到andoird测试工具的分类,我就以分类的角度来回答吧。
1)纯白盒方式的测试,monkey。楼上已经有哥们提到了,使用moneky更多的是开发team,而不是纯粹的测试team,毕竟要求对android开发比较了解才用得了mon
安卓手机自动化测试工具是什么
我的手机:HTC
Dream
问题类型:系统辅助
一、首先说说手机自动化测试的原理
1、手机自动化测试的原理为PC上一个控制端(测试工具)与手机上的一个agent端,通过串口、USB或者无线方式将PC与手机终端相连,然后应用测试工具向手机发送请求或者命令,手机收到命令或者请求后,交给agent端解析,然后agent将这些解析的命令下发给手机的各个功能模块所能识别的命令,调用那些功能模块模拟操作。完成这些操作后,手机会返回一些信息,agent可以抓取这些信息,然后传回给PC端,这样就完成了一个完整的手机自动化测试。
2、关键点在于agent,有的公司是向自己的手机终端的软件功能模块中植入测试程序响应代码,有的公司可以利用MMI_Command的方式来控制手机终端;原理就是给手机提供一个响应的接口。
3、而对于PC控制端,这个测试脚本用各种编程语言都可以,看如何定义
4、而又的自动化测试设计成录制的机制,说通俗点,就是记录手工操作的键盘信息或者LCD的操作信息(LCD需要用到智能识别机制)
5、自动化测试框架的搭建方法是通用的,你需要有一套自己的测试框架才能保证自动化测试的顺利开展。
二、Android自动化测试方向:
1、CTS,CTS
测试基于Android
instrumentation
其又基于JUnit
测试。说白了,
就是一堆单元测试用例。这也是Java
语言的擅长部分。
Monkey工具,Monkey是Android中的一个命令行工具,可以运行在模拟器里或实际设备中。它向系统发送伪随机的用户事件流(如按键输入、触摸屏输入、手势输入等),实现对正在开发的应用程序进行压力测试。Monkey测试是一种为了测试软件的稳定性、健壮性的快速有效的方法。
3、ASE,ASE
意思为Android
脚本环境,
即我们可以通过脚本(比如Python)调用Android
的功能,从而定制一些测试。比如打电话,发短信,浏览网页,等。我们可以扩充它的API(Java
并用python
脚本调用这些API,
从而实现丰富的测试功能。用于API
部分可以访问到Android
全部API,
python
又能灵活部署测试,所以ASE
的扩展性非常好。
4、Robotium,该工具用于黑盒的自动化测试。可以在有源码或者只有APK
的情况下对目标应用
怎样使用Appium进行Android自动化测试
1、Robotium——安卓测试工具
Robotium是安卓系统最常用的自动化测试工具,并且是一款免费的安卓UI测试工具。它适合于各种不同的安卓版本及其下行版本。软件开发者经常把它称作安卓。Robotium创建的测试使用Java写的。事实上,Robotium是一个个体测试数据库。
但是Robotium需要花费很长时间努力去创建测试,就像为了自动化程序创建的源代码。它不适合互动的软件系统,不能锁住和解锁智能手机。Robotium没有记录和播放功能,它不支持截屏。
2、MonkeyRunner——安卓App测试工具
MonkeyRunner是最流行的有自动化功能的安卓软件测试工具。MonkeyRunner比起Robotium要低端一些。它并不处理源代码。测试创建是用Python写的,其中可能使用记录工具,为了创建测试。MonkeyRunner可以在连接状态的PC或者模拟器上运行测试。它有一个应用程序接口可以控制智能手机或者模拟器。但手机APP测试工具的最大缺陷是每个设备都要编写脚本。另一个缺陷就是,每次测试程序发生改变时都要调整。
3、Ranorex——安卓App测试工具
Ranorex是一个不错的自动化测试工具,不仅最新版本,Android
2。2。以上版本都是可以的。Ranorex的好处在于它有详细的截屏报告。他可以通过WiFi上网连接智能手机或者平板电脑。通过这个
Android
工具,自动化的测试工程师可以详细描述数据驱动测试,但不包括
数据格式。Ranorex可以很轻松地创建测试,自动化测试工程师只需点击鼠标。Ranorex允许附加的程序模块。这个模块可以被用于开发更为复杂的测试场景中。Ranorex是一个商业化的移动应用程序的工具;其许可价格是
1990欧元/年。Ranorex搜索相当慢;它需要
秒的时间来执行操作。其中一个必须为Ranorex文书的
文件。否则它不能通过这个工具进行自动化测试,它只能在APK
文件下工作。
4、Appium——安卓自动化测试工具
Appium是为iOS和安卓系统创建的自动化测试框架,是一个免费工具。它支持
及更高版本的
Android
系统。Appium利用WebDriver界面运行测试。它支持许多编程语言,如Java、
C#、Ruby和其他的WebDriver数据库。它可以在移动设备上控制
安卓手机自动化性能测试用哪个测试工具好?
纠正一下,安卓性能测试严格意义上应该分为客户端性能测试工具、服务器性能测试工具。
如果你希望测试服务器,那么传统的Jmeter、LoadRunner等都可以,通过接口进行即可;
如果需要测试客户端性能,那么很多专门测试性能的客户端工具都可以(可以测试客户端内存、CPU、流量、电量等)、如果要严谨测试,建议有针对性的开发客户端性能测试工具
mobile
center可以配合loadrunner使用。
手机Android操作系统的自动化测试工具有哪些?分别是测试哪方面的(系统?性能?功能?UI?架构?)?
很多都是自己开发的apk吧。主要是测试压力。
像:相机、短信、电话、SD卡读写、通讯录充满、开关机、通话记录、邮件、情景模式切换、拨号上网、待机唤醒、闹钟、随即点屏等
安桌优化大师
比较全面,不错滴,软硬件方面都有
再看看别人怎么说的。
手机APP用什么工具做自动化测试?
小萝贝虚拟手机
实现手机APP的自动化测试,方便好用,可实现电脑端操控手机端动作,点击操作可以使用按键精灵录制出坐标,可以为测试者节省很多时间。
1、IOS的话用instruments,这个工具是mac系统自带的,语言为js脚本语言。
2、android目前做功能自动化的话主要是还是uiautomator,不过要求android版本17以上,API可以参考官网http://developer。android。com/tools/help/uiautomator/index。html;
3、框架的话可以学习下淘宝的自动化测试框架;
4、建议先学习自动化测试的原理,然后弄明白为什么要做自动化测试、它能做什么、谁来使用它、目标是什么以及它能带来什么价值;
5、关于android版本的问题,之前有讲到需要17以上的版本,没有什么公司会一个版本一个app的,一般都是做兼容,楼主应该更多的关注抽取什么样的测试用例去实现自动化、框架如何设计以及如何解决软件版本更新带来的维护问题。
自动化:appium,monkeyrunner,robotium
性能:monkeyrunner,腾讯gt
android兼容性适配自动化测试平台有哪些?
测试手段1:CTS
CTS原来只对OHA联盟开放。最近Google把它Release出来了。似乎做过一些裁剪,
比如针对Java虚拟机的测试,似乎被删除了,但我们一般用不着这么高深的。
针对每个版本,比如
2。1,2。2,Goolge发布了一个兼容性规范,而CTS测试就是用来确保某手机或者模拟器符合该兼容性规范。
CTS测试基于Android
instrumentation测试,其又基于JUnit测试。说白了,CTS就是一堆单元测试用例。这也是Java语言的擅长部分。
在2。1模拟器上试验了一下,有少数没有通过。
目前CTS主要包括功能方面的测试,有少数的性能方面的测试。性能测试未来会越来越多。
总的来说,CTS跟WM的LTK测试还是弱了一些,毕竟还年轻。它只包括自动化测试,目的主要是保证API的兼容性。由于基于单元测试,CTS
本身不能用于测试多应用交互的情况。
对我们的帮助:
1)应用程序的开发者可以开发出自己应用的单元测试,并将其加入CTS测试集。
2)设备制造商可以通过周期性运行CTS测试,确保没有对Android伤筋动骨。
测试手段2:Monkey
猴子测试本身非常简单,就是模拟用户的按键输入,触摸屏输入,手势输入等。看手机多长时间会出异常。
可以设置让Monkey只测试某个应用,从而辅助应用程序的开发。
对我们的帮助:
1)应用程序的开发者可以测试自己应用的鲁棒性。
2)设备制造商可以使用猴子对自己的测试施行压力测试。看设备能坚持多久。
测试手段3:ASE
意思为Android脚本环境,即我们可以通过脚本(比如
Python)调用Android的功能,从而定制一些测试。比如打电话,发短信,浏览网页,等。
个人觉得这对复现某些偶发故障非常有帮忙。
目前ASE还处于它的成长期,希望它不断成熟,为开发者提供更多便利。
测试手段4:其它
可以写一个Android应用程序,命令行脚本等,在其他方法不能实现时,就只能用这些方法了。
一方面我们要充分利用Android提供的现成测试,密切关注其进展,另一方面,我们要学习好java/Python编程,必要时,自己开发自己的测试用例。
作为模块开发者,一定要写自己的单元测试,一方面可以保证自己的代码没有缺陷,另一方面,也为系统级测试提供素材。
当然,自动化测试关键还在于意识,创意比实现更重要。
本人最近在做关于手机应用的自动化测试,想请教目前在这方面有哪些实现自动化的工具,比如 Robotium,QTP
本人最近在做关于手机应用的自动化测试。由于手机平台比较多,目前主要是支持symbian,android,想请教目前在手机平台的自动化测试工具有哪些,最好是那些开源的工具,谢谢。
你说的这两个工具是目前最常用的了,此外还有TestQuest、mShell等等……
QTP的通用性比较强,适合各种平台,HP
的安装包中提供针对手机应用的插件,但是
的一些合作伙伴把
的自动化测试能力延伸到移动应用程序领域,例如
DeviceAnywhere
Robotium支持最火爆的Android平台;
可以考虑使用专门的手机自动化测试工具,例如TestQuest、mShell之类的
http://www。m-shell。net/
另外,QTP也有一些第三方的专门测试手机应用的插件,例如Jamo
DeviceAnywhere的解决方案
你想做哪方面的?如果说是cs架构的话,很多公司选择rationalrobot,需要购买的,但是界面变动大的话,脚本需要重新编译。qtp用的也很多,而且网上有破解版,但是有一定的局限性。用它来做功能性测试还可以。自动化测试不仅要看工具,还要看工具是否适合公司架构和环境因素。希望你的自动化测试做好哦!
楼上的说的都不对,楼主问的是手机自动化,不是电脑的自动化
之前用的比较多的是Matti,
后来用的就是QT,在网上都有下载的。
不懂就不要乱帮助,我项目组就有Antomation的同事,现在用的都是QT。
可以给我发信,
在自动化测试领域里有很多工具可供选择,对于手机应用的自动化来说,有Robotium、QTP等常用工具有开源的也有商业化的产品可以根据具体需求和资源来选择适合的工具来实现手机的自动化技术 @回复