1、国外开源框架,用于Android端测试,可以进行UI测试、单元测试、服务测试等,可对Android应用进行细粒度控制。QTP:惠普商业自动化测试工具,基于插件模式,可以测试C/S、B/S。(好几年没用了,不知道是否能测试移动端)Selenium:国外优秀开源自动化工具,主要用于Web自动化测试。Autoit:用于Windows GUI中进行自动化操作。RobotframeWork:自动化测试管理工具,基于插件模式可方便结合selenium、autoit、appium等地方提供的插件,进行测试。Junit:Java单元测试框架,基本可以算的上是开源自动化测试框架的鼻祖。Instrumentati
2、on:Google开放的接口,Android端自动化测试框架,大部分Android自动化框架都基于此技术。行业活跃度较高的工具(来自网络)UIAutomator:魅族,基于此框架进行了二次开发魅族自动化测试架构之路 http:/ http:/ UIAutomator+jquery:百度糯米,糯米主要是H5较多。百度糯米O2O产品质量保证的自动化与端监控最佳实践http:/ 朋友咨询:朋友咨询:51信用卡、信用卡、云层天咨等大部分用Calabash、Appium居多。居多。工具的对比RobotiumuiautomatorEspressoAppiumCalabashEarlGreyAndroid是
3、是是是是否ios否否否是是是支持WebView是(android)坐标点击方式否是是(andoird)否脚本语言JavaJavaJava跨语言Rubyjava外设驱动是是是是是是支持的API版本所有16以上8以上所有所有所有业内云平台对工具的支持考虑后期可能需要借助云平台运行脚本所以这里暂时做了一个统计:百度MTC:Robotium、Appium http:/ Testin:Robotium,junit,Athrun,itenstinhttp:/ 业内云平台对工具的支持什么样的工具适合我们公司根据对机器人的了解,机器人存在以下特点:跨应用:分享到第三方应用,例如分享到微信、微博。跨平台:跨An
4、droid系统通讯。手机端与机器人端。第三方应用:机器人中使用了大量第三方服务,如爱奇艺。混合:android原生+H5,例如:早教视听。根据以上特点,所以选择框架必须要尽量支持,目前除了跨平台不确定是否支持,其他几点初步研究Appium都支持。APPIUM的优缺点优点:不需要重新编译APP,可以直接拿来测试可以支持使用不同的编程语言来编写测试脚本支持CROSS APP操作跨平台支持缺点:Appium没有比较好的方式去搜索Android的Toast消息C/S模式的架构,客户端编写的脚本,需发送到服务端,服务端解析然后调用具体的底层框架(如uiautomator、uiautomation等),执
5、行速度就会比原生的会慢。自动化测试短期规划(半年)1.选择一款合适的工具,搭建自动化测试平台。架实现基本的UI自动化,熟练使用框架进行UI自动化,并生成简单的测试报告。2.对框架原生API进行二次封装,提高稳定性及易用性,防止大量的出现new、各种定位控件代码等影响代码规范,造成代码后期难以维护。3.实现基于关键字编程方式,讲数据抽离出来提供给手工测试人员,使得手工测试人员能根据固定的业务使用不同的数据进行测试。4.结合Jenkins实现每次app发布新版本、测试代码提交后能自动打包、编译、运行、测试、产生报告、发送邮件。(具体方式可以灵活配置)5.对测试代码编写制定规范,提供代码生成模板方式
6、,提供给其他同学扩展框架。自动化测试长期期规划(12年)根据功能测试同学的需求开发特定的工具帮助测试同学进行测试,这个可能需要继续源码方式进行,而且部分功能可能需要开发做一些配合。对框架进行二次封装,搭建测试平台,提供更多的功能进行集成,例如压力测试、兼容性测试等。搭建统一的测试平台,方便统一管理与维护。开发一个Serveice用于后续工具与目前的工具进行通讯,例如web测试脚本与机器人脚本互相通讯。需要哪些支持1.如果是混合app,测试WebView的话需要开发打开WebView调试,才可以进行测试。还需要提供URL地址,用于查看页面元素。例如:早教试听。打开web调试需要开发人员在webv
7、iew类中调用静态方法setWebContentsDebuggingEnabled。静态方法中需要添加代码。if(Build.Version.SDK_INT=Build.VERSION_CODES.KITKAT)WebView.setWebContextsDebuggingEnabled(true);2.机器人烧录开发板,带root权限(adb进去为#,不要$),跟开发沟通后可以烧录userdebug版本。3.开放代码的可读权限,测试有时候需要查看一些配置文件和Activity的一些xml文件。4.能不能提供旋转机器人的方法,现在横屏查看控件没有好的方式进行。5.控件要求有ID,而且不能重复,最好也提供context-desc。6.各个apk对应的开发人员是谁?有时候需要跟他们沟通一些apk的相关信息,我们可以跟要求开发给予一些帮助?7.有空的时候最好协助一下测试在测试电脑上配置一下开发环境,运行某一个app,并简单讲解一下机器人的基本原理,这样有助于测试了解被测对象。8.能否提供一个带语音控制的Demo,实现通过语音控制机器人的一些操作。这个主要是考虑后期有些业务如果一定要用语音方式来实现自动化能够先了解,开发在设计的时候也可以提前考虑将语音调用模块抽取出来提供给地方三调用。参考资料魅族自动化之路:http:/
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1