移动应用自动化测试装置和方法制造方法及图纸

技术编号:11126573 阅读:104 留言:0更新日期:2015-03-11 16:04
本发明专利技术提供了一种移动应用自动化测试装置,包括:终端连接单元,用于在PC端安装待测应用程序,手机通过USB线连接PC端,在USB调试模式下识别到手机连接;测试脚本录制单元,用于利用android系统对待测应用程序进行录制、翻译和回放处理,和/或,利用iOS系统对待测应用程序进行录制和回放处理;任务测试单元,用于在自动化脚本中加入相应验证点,对待测应用程序进行验证,并输出验证结果。本发明专利技术还提供了一种移动应用自动化测试方法。通过本发明专利技术的技术方案,可以在现有的应用测试方式基础上,充分利用简单对象类型完成复杂对象类型的应用测试,建立多对象类型参与的应用测试的通用、统一测试思路。

【技术实现步骤摘要】
移动应用自动化测试装置和方法
本专利技术涉及数据处理
,具体地,涉及一种移动应用自动化测试装置和一种移动应用自动化测试方法。
技术介绍
软件的自动化测试是把以人为驱动的测试行为转化为机器执行的一种过程。测试人员按照测试用例编写自动化测试脚本,再由机器执行验证预先设置好的正常条件和异常条件。自动化脚本便可以在工程师们睡觉的时候运运行,并且记录测试结果;自动化测试还可以不断地重复某个动作而不会感到疲倦;在添加了新功能以后,还可以回归一些原有功能的测试以保证其不受影响。在此过程中节省了人力、时间和硬件资源,提高测试效率和准确率。由于智能手机操作系统及UI与电脑相比的特殊性,为智能手机应用程序编写自动化测试脚本是一件非常复杂的事情,而且很难保证正确性。目前智能手机几乎已经普及到人手一部的程度,移动应用自动化测试是该领域不可回避的一个课题。因此,需要一种新的应用测试技术,可以在现有的应用测试方式基础上,充分利用简单对象类型完成复杂对象类型的应用测试,建立多对象类型参与的应用测试的通用、统一测试思路。
技术实现思路
本专利技术正是基于上述问题,提出了一种新的应用测试技术,可以在现有的应用测试方式基础上,充分利用简单对象类型完成复杂对象类型的应用测试,建立多对象类型参与的应用测试的通用、统一测试思路。有鉴于此,本专利技术提出了一种移动应用自动化测试装置,包括:终端连接单元,用于在PC端安装待测应用程序,手机通过USB线连接PC端,在USB调试模式下识别到手机连接;测试脚本录制单元,用于当识别到有手机连接时,利用android系统对待测应用程序进行录制、翻译和回放处理,和/或,利用iOS系统对待测应用程序进行录制和回放处理;任务测试单元,用于基于对待测应用程序的处理结果,在自动化脚本中加入相应验证点,对待测应用程序进行验证,并输出验证结果。在该技术方案中,可以方便地生成自动化脚本,使得测试人员在编写脚本方面的投入大大降低。在上述技术方案中,优选地,所述测试脚本录制单元,具体包括:录制引擎处理模块,用于当识别到有手机连接时,利用android系统对待测应用程序进行录制、翻译和回放处理;和/或,自动化引擎处理模块,用于当识别到有手机连接时,利用iOS系统对待测应用程序进行录制和回放处理。在该技术方案中,可以被持续集成调用,在自动编译、做盘后进行黑盒测试,测试结果再持续集成系统读出展现,使开发全流程实现闭环。在上述技术方案中,优选地,所述录制引擎处理模块利用android系统对待测应用程序进行录制的操作,进一步包括:使用android系统自带的adb命令getevent,用户在手机上操作,动作以事件流的方式发送到PC端上,解析盖事件流获取用户在手机屏幕上的点击位置;和/或,使用adb命令截图功能,将手机屏幕截图发送到工具PC端的界面中,用户用鼠标点击界面中的手机截图,获取手机屏幕上的点击位置;同时配合使用sendkey命令向手机发指令,手机屏幕能够和PC端界面中的截图屏幕保持一致;获取用户在手机上的行为动作和/或坐标信息后,使用uiautomator获得当前屏幕中包含所有对象的坐标、所占用屏幕面积的信息;和/或,所述录制引擎处理模块利用android系统对待测应用程序进行翻译的操作,进一步包括:使用开源的Robotium框架作为回放引擎,使用java语言读取录制的脚本xml文件,将其内容转译成为Robotium框架所用的测试用例;和/或,所述录制引擎处理模块利用android系统对待测应用程序进行回放的操作,进一步包括:预置回放环境,对待测应用程序的apk包进行解包重签名再打包,重新安装到手机上,使得翻译好的用例能够在手机上回放之前录制的动作;和/或,所述自动化引擎处理模块利用iOS系统对待测应用程序进行录制的操作,进一步包括:利用UIAutomation对Developer签名的应用程序或者运行在模拟器里的应用程序进行录制,取得用户的行为动作,以对象形式保存;和/或,所述自动化引擎处理模块利用iOS系统对待测应用程序进行回放的操作,进一步包括:将待测应用程序进行Developer签名后,拿到源码后配置上developer的证书,直接通过Xcode编译安装到真实设备中,回放UIAutomation的自动化测试脚本。在该技术方案中,可以提高测试效率,使测试人员更加专注于新的测试模块的建立和开发,从而提高测试覆盖率。在上述技术方案中,优选地,所述任务测试单元,具体包括:测试任务验证模块,用于基于对待测应用程序的处理结果,在自动化脚本中加入相应验证点,将验证点翻译成能被回放的验证语句,对待测应用程序进行验证;验证结果输出模块,用于验证完成后,查看相应的回放结果,配置邮箱地址,将日志定时发送给相应人员。在该技术方案中,可以便于测试资产的数字化管理,使得测试资产在整个测试生命周期内可以得到复用。在上述技术方案中,优选地,所述测试任务验证模块对待测应用程序进行验证的操作,进一步包括:对待测应用程序的预期功能、正常条件和异常条件的验证;和/或,所述验证结果输出模块查看的回放结果,包括执行用例总数、通过数、失败数、跳过数、失败错误堆栈信息、失败截图。在该技术方案中,可以使机构的测试活动开展更加过程化,符合CMMI过程改进的思想。根据本专利技术的又一个方面,还提出了一种移动应用自动化测试方法,包括:步骤202:在PC端安装待测应用程序,手机通过USB线连接PC端,在USB调试模式下识别到手机连接;步骤204:当识别到有手机连接时,利用android系统对待测应用程序进行录制、翻译和回放处理,和/或,利用iOS系统对待测应用程序进行录制和回放处理;步骤206:基于对待测应用程序的处理结果,在自动化脚本中加入相应验证点,对待测应用程序进行验证,并输出验证结果。在该技术方案中,可以方便地生成自动化脚本,使得测试人员在编写脚本方面的投入大大降低。在上述技术方案中,优选地,所述步骤204,具体包括:步骤302:当识别到有手机连接时,利用android系统对待测应用程序进行录制、翻译和回放处理;和/或,步骤304:当识别到有手机连接时,利用iOS系统对待测应用程序进行录制和回放处理。在该技术方案中,可以被持续集成调用,在自动编译、做盘后进行黑盒测试,测试结果再持续集成系统读出展现,使开发全流程实现闭环。在上述技术方案中,优选地,所述步骤302利用android系统对待测应用程序进行录制的操作,进一步包括:使用android系统自带的adb命令getevent,用户在手机上操作,动作以事件流的方式发送到PC端上,解析盖事件流获取用户在手机屏幕上的点击位置;和/或,使用adb命令截图功能,将手机屏幕截图发送到工具PC端的界面中,用户用鼠标点击界面中的手机截图,获取手机屏幕上的点击位置;同时配合使用sendkey命令向手机发指令,手机屏幕能够和PC端界面中的截图屏幕保持一致;获取用户在手机上的行为动作和/或坐标信息后,使用uiautomator获得当前屏幕中包含所有对象的坐标、所占用屏幕面积的信息;和/或,所述步骤302利用android系统对待测应用程序进行翻译的操作,进一步包括:使用开源的Robotium框架作为回放引擎,使用java语言读取录制的脚本x本文档来自技高网...
移动应用自动化测试装置和方法

【技术保护点】
一种移动应用自动化测试装置,其特征在于,包括:终端连接单元,用于在PC端安装待测应用程序,手机通过USB线连接PC端,在USB调试模式下识别到手机连接;测试脚本录制单元,用于当识别到有手机连接时,利用android系统对待测应用程序进行录制、翻译和回放处理,和/或,利用iOS系统对待测应用程序进行录制和回放处理;任务测试单元,用于基于对待测应用程序的处理结果,在自动化脚本中加入相应验证点,对待测应用程序进行验证,并输出验证结果。

【技术特征摘要】
1.一种移动应用自动化测试装置,其特征在于,包括:终端连接单元,用于在PC端安装待测应用程序,手机通过USB线连接PC端,在USB调试模式下识别到手机连接;测试脚本录制单元,用于当识别到有手机连接时,利用android系统对待测应用程序进行录制、翻译和回放处理,和/或,利用iOS系统对待测应用程序进行录制和回放处理;任务测试单元,用于基于对待测应用程序的处理结果,在自动化脚本中加入相应验证点,对待测应用程序进行验证,并输出验证结果,所述测试脚本录制单元,具体包括:录制引擎处理模块,用于当识别到有手机连接时,利用android系统对待测应用程序进行录制、翻译和回放处理;和/或,自动化引擎处理模块,用于当识别到有手机连接时,利用iOS系统对待测应用程序进行录制和回放处理,所述录制引擎处理模块利用android系统对待测应用程序进行录制的操作,进一步包括:使用android系统自带的adb命令getevent,用户在手机上操作,动作以事件流的方式发送到PC端上,解析盖事件流获取用户在手机屏幕上的点击位置;和/或,使用adb命令截图功能,将手机屏幕截图发送到工具PC端的界面中,用户用鼠标点击界面中的手机截图,获取手机屏幕上的点击位置;同时配合使用sendkey命令向手机发指令,手机屏幕能够和PC端界面中的截图屏幕保持一致;获取用户在手机上的行为动作和/或坐标信息后,使用uiautomator获得当前屏幕中包含所有对象的坐标、所占用屏幕面积的信息;和/或,所述录制引擎处理模块利用android系统对待测应用程序进行翻译的操作,进一步包括:使用开源的Robotium框架作为回放引擎,使用java语言读取录制的脚本xml文件,将其内容转译成为Robotium框架所用的测试用例;和/或,所述录制引擎处理模块利用android系统对待测应用程序进行回放的操作,进一步包括:预置回放环境,对待测应用程序的apk包进行解包重签名再打包,重新安装到手机上,使得翻译好的用例能够在手机上回放之前录制的动作;和/或,所述自动化引擎处理模块利用iOS系统对待测应用程序进行录制的操作,进一步包括:利用UIAutomation对Developer签名的应用程序或者运行在模拟器里的应用程序进行录制,取得用户的行为动作,以对象形式保存;和/或,所述自动化引擎处理模块利用iOS系统对待测应用程序进行回放的操作,进一步包括:将待测应用程序进行Developer签名后,拿到源码后配置上developer的证书,直接通过Xcode编译安装到真实设备中,回放UIAutomation的自动化测试脚本。2.根据权利要求1所述的移动应用自动化测试装置,其特征在于,所述任务测试单元,具体包括:测试任务验证模块,用于基于对待测应用程序的处理结果,在自动化脚本中加入相应验证点,将验证点翻译成能被回放的验证语句,对待测应用程序进行验证;验证结果输出模块,用于验证完成后,查看相应的回放结果,配置邮箱地址,将日志定时发送给相应人员。3.根据权利要求2所述的移动应用自动化测试装置,其特征在于,所述测试任务验证模块对待测应用程序进行验证的操作,进一步包括:对待测应用程序的预期功能、正常条件和异常条件的验证;和/或,所述验证结果输出模块查看的回放结果,包括执行...

【专利技术属性】
技术研发人员:刘建男
申请(专利权)人:用友软件股份有限公司
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1