基于安卓软件自动化测试工具的设计与实现
摘要 随着近年来科学技术的快速发展,人们的日常生活水平也得到了显著的提高,智能手机作为人们日常生活中必不可少的重要组成部分,受到人们思维模式的转變,传统的短信、电话等通讯功能已经无法满足人们的基本需求。安卓(Android)软件作为一款被广泛应用的智能手机系统,本文主要以安卓软件为基础,针对自动化测试工具进行了设计,期望以此来为提高软件自动化测试水平提供有效的理论依据。
关键词 安卓软件;自动化测试;设计
前言
近年来,网络技术的快速发展使移动终端等设备在日常生活中的使用率也得到了显著的提升,Android系统作为谷歌公司设计的一款智能手机系统,随着其在手机设备中的广泛应用,人们对于Android系统的认知程度也不断提升。然而,不断开发的手机软件在为人们提供更具多元化服务的同时,也使人们的手机运行面临着一定的风险,而如何实现对手机软件质量的有效测试成为保障手机安全稳定运行的关键所在。因此,有必要针对Android软件自动化测试工具的设计,以此来降低传统人工测试所产生的测试成本。
1 基于安卓软件自动化测试工具的设计
1.1 体系结构设计
体系结构设计作为系统设计环节中的关键所在,只有确保体系结构设计的合理性,才能实现对系统复杂度的有效简化[1-2]。本研究在对Android软件自动化测试平台进行设计的过程中,主要采取了B/S结构,一方面是因为B/S结构的使用有利于开发者可以随时实现对测试的提交以及浏览等,另一方面是B/S结构的应用可以进一步提高测试业务在其他方面的拓展,可以通过增加网页功能的方式以此来增加服务器的功能。除此之外,B/S结构具有后期维护简单的主要特点,仅需要对前端网页的改变,即可实现对用户平台的同步更新。
1.2 功能模块设计
(1) 功能测试
功能测试作为黑盒测试工作中的主要环节,其可以有效检查Android软件的功能是否符合用户的基本需求[3]。在开展功能测试前,首先需要对其进行基本测试,从而帮助用户可以快速找到应用程序上存在的直接错误。比如在登录账号的过程中,部分应用程序由于使用量较小因此主动注册的用户数量相对较小,相比而言,微信。微博以及QQ等应用的用户数量则相对庞大,因此开发者在设计的过程中通过对微信、QQ等对外开放账号体系的应用,将其作为自己应用的账
号进行登录。本研究在对平台进行设计时,也采取了使用者可饮用第三方账号登录的方式进行了功能测试。
(2) 性能测试
性能测试作为Android软件质量测试中的重要组成部分,同时也是解决软件存在质量的主要途径,并引起了广大用户的高度关注。针对Android软件的性能测试主要是利用自动化回放以及打包工具,在录制期间将测试人员的手机与电脑端相连接,在对收集操作的过程中进行录制,同时对操作过程进行回放,并通过XML脚本集的方式自动生成。其中,回放时使用Robotium框架对XML脚本当中的操作在手机上进行还原,以此来模拟用户对软件的实际使用情况,并针对使用过程中的基本性能进行测试。
(3) 兼容性测试
实践经验表明,任何程序均可能出现不兼容的问题,而与其他程序或系统的兼容性好坏将直接对软件的质量产生决定性的影响。在对软件的兼容性进行测试时,本研究分别针对软件的安装、卸载、分辨率、版本、手机品牌、ROM、芯片以及安全软件共计8个环节进行了兼容性测试,分别针对软件在安装和卸载环节中存在的问题、不同分辨率界面下的显示情况、新版本需要兼容之前的旧版本、不同手机品牌机型等情况进行综合测试。
2 基于安卓软件自动化测试工具的设计实现
2.1 工具主界面的实现
在系统平台上,可以通过对XML语言以及Java代码的方式以此来实现对用户界面的有效实现,其中,XML语言是独立移动应用程序中常见的语言形式,可将其作为首选方式,但针对可视化界面的SDK处理必须使用Java代码。本研究所设计的测试工具当中,采取的即为XML语言,通过创立可视化界面的方式设置了工具的主要界面,界面内分别包括标题区域、名称设置区域、阈值设置区域和自动上传区域。标题区域主要是使用layout_alignParentLeft=“ture”的方式实现对返回按钮所在区域的设置。名称设置区域主要包括任务名称的设置以及APP名称的设置,前者的输入使用EditText,利用默认方式进行填写,后者使用Button的方式默认填写。阈值设置区域包括CPU设置和内存设置,前者范围为0%~100%,后者的范围则为0M~200M。
2.2 待测应用程序功能的实现
创建测试信息填写后,通过提交的方式使界面跳转至被测应用界面当中,其不仅可以有效简化用户的操作,同时也有利于提高测试功能的实用性。进入被测应用后,页面上方会出现悬浮窗,其可以有效控制测试工具在后台的运行情况,该悬浮窗位于屏幕的最顶端,优先级别设置为最高,且不会被其他界面所覆盖,而为了避免对悬浮窗后面页面的内容产生遮挡,将其设置为透明,即
WindowManager.format。同时,为了避免悬浮窗对页面上的部分控件产生干扰,采取了可移动悬浮窗的方式,使用户可以通过拖拽悬浮窗的方式将其移动到屏幕上的任意位置。
3 结束语
综上所述,Android系统作为目前较为常见的手机系统之一,随着软件开发数量的不断增多,如何实现对软件安全性以及性能的有效测试为手机系统的测试功能提出了更高的要求。通过本文对Android软件自动化测试工具的实际和实现,发现其可以有效实现对多个产品的自动化测试,且在产品的集成测试中发挥出了较好的测试效果,并实现对测试结果的良好保存,为提高Android软件的自动化测试水平产生了积极的影响。
参考文献
[1] 王娴.浅析面向Android软件性能的自动化测试系统设计与实现[J].中国科技投资,2017,21(27):295.
[2] 郑宇,白凡凡.Android多媒体通信终端自动化测试工具设计与实现[J].电信快报,2016,19(4):28-32.
[3] 陈学亮,武娟,庞涛,等.基于云的Android应用自动化测试框架研究[J].电信技术,2017,19(6):29-31.
因篇幅问题不能全部显示,请点此查看更多更全内容