一种基于混合云的可扩展的移动应用自动化测试框架的构架方法,其特征是对于自动测试中的移动应用自动测试,依据多级服务器分发任务获取报告统计报告的流程,进行了自顶向下的多级服务器架构。基于混合云的框架融合了公有云和私有云,它突破了私有云的硬件限制,利用公有云的可能性,可以随时获取更高的计算能力。整个框架通过调度和管理中心进行连接,使得私有云可以通过任务发布的方式共享公有云的资源外,还能在空闲时接受别的云发布的任务来共享自己的资源。
A scalable mobile application automation test platform based on hybrid cloud
【技术实现步骤摘要】
一种基于混合云的可扩展的移动应用自动化测试平台
本专利技术属于软件测试
,尤其是软件测试中自动测试移动应用领域,用于一种基于混合云的可扩展的移动应用自动化测试技术。技术背景随着移动终端和移动应用(Apk)的普及,开发者视角从桌面端移向了移动端。开发一个低出错率、低故障率的优质移动应用非常困难,由于每个移动应用的独特性和平台的不一致性以及安卓平台的碎片化。因此,移动应用开发者往往需要对移动应用进行大规模复杂的手动测试。这些手动测试包括不同终端设备型号、不同系统版本的兼容性测试,以及移动应用的稳定性测试和一些其他的功能性能测试。小微企业在测试Android应用,需要购买不同版本和不同机型的大量Android手机,产生额外的花费,并且十分不方便管理。对于个人开发者和小型团队而言,收集全部的Android版本是比较困难的一件事,而且也不便于管理。此外,即使可以收集到全部版本的Android机型,在所有机型上逐步手动测试也是费时费力的一项工作。尽管如今自动化测试工具如雨后春笋般地出现,但是普遍存在以下几个问题,测试工具通常收费;免费版的功能少之又少,覆盖不全;移动端全平台通用的测试工具基本不存在;代码开源的自动化测试工具较少。传统的自动化测试脚本也仅仅只能通过开发人员单独在移动应用上运行才能工作,没有合适的平台来管理这些自动化测试脚本。随之带来的问题就是如何在自动化测试平台上处理和展示这些来自脚本运行的数据。工业界的普遍做法是将错误日志(一般包括时间,错误发生位置)等信息直接堆砌在屏幕上,往往缺乏较直观的表示。对于开发人员,重复的数据反而加大了修复移动应用中错误和缺陷的工作量;对于测试人员,许多数据的显示又非常难以理解,无法促进进一步的测试和探测移动应用中的问题。
技术实现思路
本专利技术要解决的问题是:当前移动应用在多机型测试的效率低以及开发人员的测试时间长的问题。本专利技术的技术方案为:一种基于混合云的可扩展的移动应用自动化测试框架的构架方法,其特征是对于自动测试中的移动应用自动测试,依据多级服务器分发任务获取报告统计报告的流程,进行了自顶向下的多级服务器架构。基于混合云的框架融合了公有云和私有云,它突破了私有云的硬件限制,利用公有云的可能性,可以随时获取更高的计算能力。整个框架通过调度和管理中心进行连接,使得私有云可以通过任务发布的方式共享公有云的资源外,还能在空闲时接受别的云发布的任务来共享自己的资源。这样的框架使得待测移动应用可以同时在不同的机型环境下测试,以尽可能通过自动化测试提高多机型测试的效率与减少开发人员的测试时间。多级服务器的拓扑结构与功能划分为:主服务器只负责系统的业务交互,主服务器与子服务器一对多进行连接,并且可以通过云调度来进行服务注册和服务发现来实现可扩展性,子服务器负责具体的测试业务。根据该架构方法搭建的自动测试系统工作的步骤如下:1)私有云主服务器接受任务请求,得到可安装的移动应用安装包,测试机型,测试手机数量和用户自定义测试脚本2)主服务器和混合云调度管理中心进行通讯,将超出自己资源能力范围的任务发布道调度管理中心上。3)任务调度管理中心根据当前注册到调度管理中心的混合云进行任务拆分和预处理,然后根据混合云选择策略和任务属性将任务分配给其他混合云。并将测试信息发送给混合云的主服务器2)获得任务的混合云主服务器会根据配置参数(测试次数,测试时间,测试机型,测试类型等),选择进行测试的子服务器,并把移动应用安装包分发到各个子服务器3)子服务器根据主服务器传来的参数(测试次数,测试时间,测试机型,测试类型等),把移动系统移动应用安装至连接在子服务器上的各移动系统手机设备上。4)子服务器运行默认的移动应用自动测试脚本或用户自定义测试脚本。5)子服务器为每个连接在子服务器上的移动系统手机自动生成一份测试报告(包括但不限于测试类型,测试时间,测试次数,系统崩溃次数,系统崩溃截图等),将所有生成的测试报告传回主服务器,主服务器会实时将测试数据发送给任务调度管理中心。6)任务调度管理中心运行测试报告分析程序,根据测试手机型号,Android手机型号等分类依据形成完整报告。7)提交任务的私有云主服务器向任务调度管理中心获取完整的测试报告和数据。2.根据权利要求1所描述的一种基于混合云的可扩展的移动应用自动化测试框架,其特征是利用了步骤4)中的默认自动测试程序,可以对待测的移动移动应用测试进行模拟各种手机操作行为来进行以界面深度遍历为目标的界面测试。测试中的模拟操作行为包括:点击,拖拽,双击,输入文字等。3.根据权利要求1所描述的一种基于混合云的可扩展的移动应用自动化测试框架方法,其特征是主从服务器之间的拓扑结构,主服务器只负责系统的业务交互,子服务器负责具体的测试业务,提高了系统的性能、稳定性,可伸缩性和测试资源的使用率。4.根据权利要求1所描述的一种基于混合云的可扩展的移动应用自动化测试框架方法,通过公有云和私有云之间的资源共享,提升了整个平台的资源利用率,解决了部分私有云资源不足的问题。5.根据权利要求1所描述的一种基于混合云的可扩展的移动应用自动化测试框架方法,任务调度管理中心会根据实时的测试数据,依据用户选择的报告模板和规则进行数据整合,形成最终的测试报告。提高了测试数据和报告的精准性和丰富性,可以依据私有云的选择来生成不同的测试报告。本专利技术的特点在于:1、使用多级服务器控制安装包的分发;2、使用自动测试程序代替人工手动测试;3、对多种机型可以同时进行测试并生成测试报告。将这3点结合,本专利技术可以自动进行移动移动应用的安装与卸载,待测移动应用可进行自动化随机测试,可以进行多个移动机型的压力测试,测试后生成的报告可以有效展示测试过程中触发移动应用中的缺陷的原因并记录了截图与操作日志以供参考;4、基于混合云的系统架构可以对子服务器的数量进行扩展,可以根据测试需求来进行云调度。5、基于混合云的系统框架可以通过公有云和私有云资源共享的方式,有效提高资源的利用率,解决私有云资源稀缺的问题。6、基于混合云的系统框架在任务调度管理中心可以对测试数据依据不同的模板和规则进行结果汇合,提高测试报告的精准性和多样性。本专利技术的有益效果是:可以减少程序花费在手动测试上的精力,减少程序员花费在不同机型调配上的时间,使得程序员可以用更少的时间尽早得找到错误,节省了程序员寻找错误的时间成本。附图说明图1为本专利技术的混合云及任务调度管理中心示意图。图2为本专利技术的公有云系统架构示意图。图3任务调度管理中心任务分配算法流程图。图4为本专利技术的实施流程图。图5为本专利技术实施示例中,测试报告概览页面,包括了被测移动应用基本信息,测试手机的基本信息和测试过程中收集到的数据。图6为本专利技术实施示例中,收集到的CPU,内存,FPS和网络数据图表。图7为本专利技术实施示例中,测试报告屏幕截图页面示例。图8为本专利技术实施示例中,根据测试过程生成的应用界面树图像。本文档来自技高网...
【技术保护点】
1.一种基于混合云的可扩展的移动应用自动化测试框架,其特征是对于移动应用自动测试,依据多级服务器分发任务获取报告统计报告,进行自顶向下的多级服务器架构,基于混合云的框架融合了公有云和私有云,它突破了私有云的硬件限制,利用公有云的可能性,可以随时获取更高的计算能力。整个框架通过调度和管理中心进行连接,使得私有云可以通过任务发布的方式共享公有云的资源外,还能在空闲时接受别的云发布的任务来共享自己的资源。使得待测试移动应用程序可以同时在不同的机型环境下进行自动化测试,以解决移动界面测试时间长,多机型测试的效率低及开发人员的测试时间长,以及小微公司无法承受大量测试手机费用等问题。该架构方法的步骤如下:/n1)私有云主服务器接受任务请求,得到可安装的移动应用安装包,测试机型,测试手机数量和用户自定义测试脚本;/n2)主服务器和混合云调度管理中心进行通讯,将超出自己资源能力范围的任务发布道调度管理中心上;/n3)任务调度管理中心根据当前注册到调度管理中心的混合云进行任务拆分和预处理,然后根据混合云选择策略和任务属性将任务分配给其他混合云。并将测试信息发送给混合云的主服务器;/n4)获得任务的混合云主服务器会根据配置参数(测试次数,测试时间,测试机型,测试类型等),选择进行测试的子服务器,并把移动应用安装包分发到各个子服务器;/n5)子服务器根据主服务器传来的参数(测试次数,测试时间,测试机型,测试类型等),把移动系统移动应用安装至连接在子服务器上的各移动系统手机设备上。/n6)子服务器运行默认的移动应用自动测试脚本或用户自定义测试脚本;/n7)子服务器为每个连接在子服务器上的移动系统手机自动生成一份测试报告(包括但不限于测试类型,测试时间,测试次数,系统崩溃次数,系统崩溃截图等),将所有生成的测试报告传回主服务器,主服务器会实时将测试数据发送给任务调度管理中心;/n8)任务调度管理中心运行测试报告分析程序,根据测试手机型号,Android手机型号等分类依据形成完整报告;/n9)提交任务的私有云主服务器向任务调度管理中心获取完整的测试报告和数据。/n...
【技术特征摘要】
1.一种基于混合云的可扩展的移动应用自动化测试框架,其特征是对于移动应用自动测试,依据多级服务器分发任务获取报告统计报告,进行自顶向下的多级服务器架构,基于混合云的框架融合了公有云和私有云,它突破了私有云的硬件限制,利用公有云的可能性,可以随时获取更高的计算能力。整个框架通过调度和管理中心进行连接,使得私有云可以通过任务发布的方式共享公有云的资源外,还能在空闲时接受别的云发布的任务来共享自己的资源。使得待测试移动应用程序可以同时在不同的机型环境下进行自动化测试,以解决移动界面测试时间长,多机型测试的效率低及开发人员的测试时间长,以及小微公司无法承受大量测试手机费用等问题。该架构方法的步骤如下:
1)私有云主服务器接受任务请求,得到可安装的移动应用安装包,测试机型,测试手机数量和用户自定义测试脚本;
2)主服务器和混合云调度管理中心进行通讯,将超出自己资源能力范围的任务发布道调度管理中心上;
3)任务调度管理中心根据当前注册到调度管理中心的混合云进行任务拆分和预处理,然后根据混合云选择策略和任务属性将任务分配给其他混合云。并将测试信息发送给混合云的主服务器;
4)获得任务的混合云主服务器会根据配置参数(测试次数,测试时间,测试机型,测试类型等),选择进行测试的子服务器,并把移动应用安装包分发到各个子服务器;
5)子服务器根据主服务器传来的参数(测试次数,测试时间,测试机型,测试类型等),把移动系统移动应用安装至连接在子服务器上的各移动系统手机设备上。
6)子服务器运行默认的移动应用自动测试脚本或用户自定义测试脚本;
7)子服务器为每个连接在子服...
【专利技术属性】
技术研发人员:陈振宇,张天,房春荣,田元汉,徐悠然,黄勇,臧晓杰,
申请(专利权)人:南京慕测信息科技有限公司,
类型:发明
国别省市:江苏;32
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。