一种基于Monkey命令的自动化测试方法及系统技术方案

技术编号:13345139 阅读:53 留言:0更新日期:2016-07-14 13:36
本发明专利技术公开了一种基于Monkey命令的自动化测试方法及系统,方法包括:当检测到安卓设备与测试平台连接成功时,则加载安卓设备的应用程序包;测试平台中的Monkey工具接收用户的操作指令,设置Monkey工具中的测试方式,及配置测试项;根据Monkey工具中的测试方式及测试项对安卓设置中的应用程序包进行测试,并实时打印测试的日志信息和测试异常信息;当安卓设备的应用程序包均测试完毕,则根据报告模板生成测试报告,并保存测试日志。本发明专利技术可自动获取连接的安卓设备的信息,同时测试多台安卓设备,根据设置自动生成测试命令并连续发送,还可实时分析报告异常信息并最终生成测试报告,方便对应用程序包的自动化测试。

【技术实现步骤摘要】
一种基于Monkey命令的自动化测试方法及系统
本专利技术涉及自动化测试
,尤其涉及的是一种基于Monkey命令的自动化测试方法及系统。
技术介绍
Monkey是Android中的一个命令行工具,可以运行在模拟器里或实际设备中。它向系统发送伪随机的用户事件流(如按键输入、触摸屏输入、手势输入等),实现对正在开发的应用程序进行压力测试。Monkey测试是一种为了测试软件的稳定性、健壮性的快速有效的方法。Monkey测试是Android自动化测试的一种手段。但是原来进行Monkey测试只能通过手动在命令窗口输入相应的shell命令,一次只能操作一台Android设备,不能连续发送测试指令,也不能自动收集和分析测试结果,容易出错,效率较低。因此,现有技术还有待于改进和发展。
技术实现思路
鉴于上述现有技术的不足,本专利技术的目的在于提供一种基于Monkey命令的自动化测试方法及系统,解决了现有技术中进行Monkey测试只能通过手动在命令窗口输入相应的shell命令,一次只能操作一台Android设备,不能连续发送测试指令,也不能自动收集和分析测试结果,容易出错,效率较低的缺陷。本专利技术的技术方案如下:一种基于Monkey命令的自动化测试方法,其中,包括以下步骤:A、当检测到安卓设备与测试平台连接成功时,则加载安卓设备的应用程序包;B、测试平台中的Monkey工具接收用户的操作指令,设置Monkey工具中的测试方式,及配置测试项;C、根据Monkey工具中的测试方式及测试项对安卓设置中的应用程序包进行测试,并实时打印测试的日志信息和测试异常信息;D、当安卓设备的应用程序包均测试完毕时,则根据预先存储的报告模板生成测试报告,并保存测试日志。所述基于Monkey命令的自动化测试方法,其中,所述步骤A具体包括:A1、测试平台加载安卓设备,获取设备列表,并判断设备列表中的安卓设备是否与测试平台连接成功;A2、当设备列表中的安卓设备与测试平台连接成功时,则加载安卓设备的应用程序包,并获取待测试的应用程序包所对应应用程序的名称和包名。所述基于Monkey命令的自动化测试方法,其中,所述测试方式包括单应用顺序测试方式和多应用交叉测试方式。所述基于Monkey命令的自动化测试方法,其中,所述测试项包括测试时长、测试命令、log保存位置、log分段大小、测试完成时提示音乐、自动打开测试报告。所述基于Monkey命令的自动化测试方法,其中,所述步骤C具体包括:C1、判断Monkey工具中的测试方式的测试方式是单应用顺序测试方式,还是多应用交叉测试方式;C2、当测试方式是单应用顺序测试方式时,则加载安卓设备的应用程序包;C3、判断安卓设备的应用程序包是否加载成功,当加载成功时则执行步骤C4,当加载不成功时则执行步骤C14;C4、设置本地应用,选择测试应用,调整测试应用的顺序,并定义测试时长;C5、开始运行;C6、判断是否达到设置的测试时长,当达到测试时长时则执行步骤C7,当未达到测试时长则执行步骤C12;C7、停止Monkey进程,停止打印和解析Monkey日志;C8、记录测试时长和出错信息;C9、判断当前的应用程序包是否为安卓设备中被选定的多个待测试的应用程序包中的最后一个测试包,若当前的应用程序包是最后一个测试包则执行步骤C11,若当前的应用程序包不是最后一个测试包则执行步骤C10;C10、继续对当前的应用程序包的下一个测试包进行测试,并返回执行步骤C5;C11、停止测试,并执行步骤D;C12、判断Monkey进程是否存在,当Monkey进程存在时则执行步骤C13,当Monkey进程不存在时则执行步骤C8;C13、打印Monkey日志,解析Monkey日志,抓取异常信息,并返回执行步骤C6;C14、加载安卓设备的应用程序包是否超出预设的时间阈值,当加载超出所述时间阈值则执行步骤C15,当加载未超出所述时间阈值则执行步骤C2;C15、结束测试。所述基于Monkey命令的自动化测试方法,其中,所述测试异常信息包括错误包名、错误类型、第一次出现的时间、出现的次数、错误的详细信息截取。所述基于Monkey命令的自动化测试方法,其中,所述测试报告为excel格式的测试报告。所述基于Monkey命令的自动化测试方法,其中,所述测试日志包括Monkey日志,程序日志信息和测试结束时的状态log信息。一种基于Monkey命令的自动化测试系统,其中,包括:设备管理模块,用于当检测到安卓设备与测试平台连接成功时,则加载安卓设备的应用程序包;配置管理模块,用于测试平台中的Monkey工具接收用户的操作指令,设置Monkey工具中的测试方式,及配置测试项;运行管理模块,用于根据Monkey工具中的测试方式及测试项对安卓设置中的应用程序包进行测试,并实时打印测试的日志信息和测试异常信息;统计报告模块,用于当安卓设备的应用程序包均测试完毕时,则根据预先存储的报告模板生成测试报告,并保存测试日志。所述基于Monkey命令的自动化测试系统,其中,所述测试方式包括单应用顺序测试方式和多应用交叉测试方式。本专利技术所提供的一种基于Monkey命令的自动化测试方法及系统,方法包括:当检测到安卓设备与测试平台连接成功时,则加载安卓设备的应用程序包;测试平台中的Monkey工具接收用户的操作指令,设置Monkey工具中的测试方式,及配置测试项;根据Monkey工具中的测试方式及测试项对安卓设置中的应用程序包进行测试,并实时打印测试的日志信息和测试异常信息;当安卓设备的应用程序包均测试完毕时,则根据预先存储的报告模板生成测试报告,并保存测试日志。本专利技术可自动获取连接的安卓设备的信息,同时测试多台安卓设备,根据设置自动生成测试命令并连续发送测试命令,还可实时分析报告异常信息并最终生成测试报告。附图说明图1为本专利技术所述基于Monkey命令的自动化测试方法较佳实施例的流程图。图2为本专利技术所述基于Monkey命令的自动化测试方法中以单应用顺序测试方式进行自动化测试的具体流程图。图3为本专利技术所述基于Monkey命令的自动化测试方法中Monkey工具的界面示意图。图4为本专利技术所述基于Monkey命令的自动化测试系统较佳实施例的功能模块框图。具体实施方式本专利技术提供一种基于Monkey命令的自动化测试方法及系统,为使本专利技术的目的、技术方案及效果更加清楚、明确,以下参照附图并举实施例对本专利技术进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本专利技术,并不用于限定本专利技术。请参见图1,其为本专利技术所述基于Monkey命令的自动化测试方法较佳实施例的流程图。如图1所示,所述基于Monkey命令的自动化测试方法,包括以下步骤:步骤S100、当检测到安卓设备与测试平台连接成功时,则加载安卓设备的应用程序包;步骤S200、测试平台中的Monkey工具接收用户的操作指令,设置Monkey工具中的测试方式,及配置测试项;步骤S300、根据Monkey工具中的测试方式及测试项对安卓设置中的应用程序包进行测试,并实时打印测试的日志信息和测试异常信息;步骤S400、当安卓设备的应用程序包均测试完毕时,则根据预先存储的报告模板生成测试报告,并保存测试日志。本专利技术的实施例中,采用四个主要流程来实现安卓设备本文档来自技高网...

【技术保护点】
一种基于Monkey命令的自动化测试方法,其特征在于,包括以下步骤:A、当检测到安卓设备与测试平台连接成功时,则加载安卓设备的应用程序包;B、测试平台中的Monkey工具接收用户的操作指令,设置Monkey工具中的测试方式,及配置测试项;C、根据Monkey工具中的测试方式及测试项对安卓设置中的应用程序包进行测试,并实时打印测试的日志信息和测试异常信息;D、当安卓设备的应用程序包均测试完毕时,则根据预先存储的报告模板生成测试报告,并保存测试日志。

【技术特征摘要】
1.一种基于Monkey命令的自动化测试方法,其特征在于,包括以下步骤:A、当检测到安卓设备与测试平台连接成功时,则加载安卓设备的应用程序包;B、测试平台中的Monkey工具接收用户的操作指令,设置Monkey工具中的测试方式,及配置测试项;C、根据Monkey工具中的测试方式及测试项对安卓设置中的应用程序包进行测试,并实时打印测试的日志信息和测试异常信息;D、当安卓设备的应用程序包均测试完毕时,则根据预先存储的报告模板生成测试报告,并保存测试日志;所述测试方式包括单应用顺序测试方式和多应用交叉测试方式;所述测试项包括测试时长、测试命令、log保存位置、log分段大小、测试完成时提示音乐、自动打开测试报告;所述步骤A具体包括:A1、测试平台加载安卓设备,获取设备列表,并判断设备列表中的安卓设备是否与测试平台连接成功;A2、当设备列表中的安卓设备与测试平台连接成功时,则加载安卓设备的应用程序包,并获取待测试的应用程序包所对应应用程序的名称和包名;当以多应用交互测试方式进行测试时,则分为选取黑名单测试、白名单测试;所述多应用交叉测试方式在一次设置完成后只发出一次测试指令,所述测试指令根据设置进行交互测试所选择的多个应用。2.根据权利要求1所述基于Monkey命令的自动化测试方法,其特征在于,所述步骤C具体包括:C1、判断Monkey工具中的测试方式是单应用顺序测试方式,还是多应用交叉测试方式;C2、当测试方式是单应用顺序测试方式时,则加载安卓设备的应用程序包;C3、判断安卓设备的应用程序包是否加载成功,当加载成功时则执行步骤C4,当加载不成功时则执行步骤C14;C4、设置本地应用,选择测试应用,调整测试应用的顺序,并定义测试时长;C5、开始运行;C6、判断是否达到设置的测试时长,当达到测试时长时则执行步骤C7,当未达到测试时长则执行步骤C12;C7、停止Monkey进程,停止打印和解析Monkey日志;C8、记录测试时长和出错信息;C9、判断当前的应用程序包是否为安卓设备中被选定的多个待测试的应用程序包中的最后一个测试包,若当前的应用程序包是最后一个测试包则执行步骤C11,若当前的应用程序包不是最后一个测试包则执行步骤C10;C10、继续对当前的应用程序包的下一个测试...

【专利技术属性】
技术研发人员:魏亚奇唐苗苗余艳萍
申请(专利权)人:惠州TCL移动通信有限公司
类型:发明
国别省市:广东;44

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

1