一种基于控件的自动化测试方法及系统技术方案

技术编号:11408328 阅读:56 留言:0更新日期:2015-05-06 07:34
本发明专利技术实施例公开了一种基于控件的自动化测试方法及系统,其中的方法可包括:获取待测应用程序的待测控件对象,判断识别所述待测控件对象支持的操作指令;根据所述判断识别的待测控件对象支持的操作指令构建所述待测控件对象的测试操作指令序列;设置所述待测控件对象在其所属的待测应用程序中的测试权重值,所述权重值表示所述待测控件对象在其所属的待测应用程序中被执行相应测试操作指令序列的概率;根据所述测试权重值选取待测控件对象,触发待测设备执行针对所述选取的待测控件对象构建的测试操作指令序列。采用本发明专利技术,可以实现根据控件的重要性进行自动化地无序测试操作,提高了基于控件的自动化测试结果的准确性。

【技术实现步骤摘要】
一种基于控件的自动化测试方法及系统
本专利技术涉及测试
,尤其涉及一种基于控件的自动化测试方法及系统。
技术介绍
在移动互联网时代,手机已经成为人们日常学习和生活中不可或缺的工具,而Android系统正是将此作为着眼点,应运而生。未来随着AndroidAPP(AndroidApplication)越来越多样化、人性化,单应用测试目标也有了根本性的变化,不仅仅是提供可以使用的基本功能需求,更重要是保证用户能够体验到一个性能优良、稳定性好的优质AndroidAPP(AndroidApplication)。因此,移动应用稳定性测试成为必不可少的环节,在传统的软件测试过程中,长期从事重复劳动会降低测试人员的工作积极性,从而影响到软件测试的质量;为把测试人员从繁琐的重复劳动中解放出来,提高软件测试的质量,应用稳定性自动化测试的引入势在必行。现有技术中,基于APP控件的测试主要有随机测试和遍历测试两种,但都没有根据用户的操作习惯真正的还原用户在正常使用过程中的场景,测试的客观性较低,测试结果的准确性无法得到保证。
技术实现思路
本专利技术实施例所要解决的技术问题在于,提供一种基于控件的自动化测试方法及系统,实现了基于控件的自动化的测试,根据控件在所属应用程序中的测试重要性设置控件操作指令无序操作的概率,将控件测试场景模拟为更真实的用户操作使用场景,使得基于控件的自动化测试结果更加准确。第一方面,本专利技术实施例提供了一种基于控件的自动化测试方法,所述方法包括:获取待测应用程序的待测控件对象,判断识别所述待测控件对象支持的操作指令;根据所述判断识别的待测控件对象支持的操作指令构建所述待测控件对象的测试操作指令序列;设置所述待测控件对象在其所属的待测应用程序中的测试权重值,所述权重值表示所述待测控件对象在其所属的待测应用程序中被执行相应测试操作指令序列的概率;根据所述测试权重值选取待测控件对象,触发待测设备执行针对所述选取的待测控件对象构建的测试操作指令序列。结合第一方面,在第一种可能的实现方式中,所述待测应用程序为待测设备中安装的应用程序,所述获取待测应用程序的待测控件对象包括:建立与所述待测设备的通信连接;获取所述待测设备中安装的应用程序中的待测控件对象。结合第一方面,在第二种可能的实现方式中,所述判断识别所述待测控件对象支持的操作指令,包括:根据所述待测控件对象的属性信息判断所述待测控件对象的类型;根据所述待测控件对象的类型判断所述待测控件对象支持的操作指令。结合第一方面,在第三种可能的实现方式中,所述根据所述测试权重值选取待测控件对象,触发待测设备执行针对所述选取的待测控件对象构建的测试操作指令序列,包括:检测所述待测应用程序所在的待测设备是否处于空闲状态;若处于空闲状态则对所述选取的待测控件对象执行对应的测试操作指令序列。结合第一方面,在第四种可能的实现方式中,所述根据所述测试权重值选取待测控件对象,触发待测设备执行针对所述选取的待测控件对象构建的测试操作指令序列,还包括:记录对所述选取的待测控件对象执行对应的测试操作指令序列的测试视频录像;根据所述待测应用程序在测试过程中汇报的异常情况的时间点,在所述测试视频录像中提取所述异常情况的时间点所对应的帧画面并记录保存。结合第一方面,在第五种可能的实现方式中,所述根据所述测试权重值选取待测控件对象,触发待测设备执行针对所述选取的待测控件对象构建的测试操作指令序列,还包括:记录所述待测应用程序的测试情况,对所述记录的测试情况进行分析挖掘。第二方面,本专利技术实施例提供了一种基于控件的自动化测试方法,所述方法包括:接收测试服务器发送的交互动作指令;当分析出所述交互动作指令为获取待测应用程序的待测控件对象的指令时,向所述测试服务器发送待测应用程序的待测控件对象信息;以使所述测试服务器判断识别所述待测控件对象支持的操作指令,根据所述判断识别的待测控件对象支持的操作指令构建所述待测控件对象的测试操作指令序列,设置所述待测控件对象在其所属的待测应用程序中的测试权重值,并根据所述测试权重值选取待测控件对象后,发送针对所述选取的待测控件对象构建的测试操作指令序列;接收所述测试服务器发送的测试操作指令序列,并执行所述测试操作指令序列。结合第二方面,在第一种可能的实现方式中,所述接收测试服务器发送的交互动作指令之后,还包括:当分析出所述交互动作指令为测试操作指令序列时,执行所述测试操作指令序列;其中所述测试操作指令序列为所述测试服务器获取待测应用程序的待测控件对象,判断识别所述待测控件对象支持的操作指令,根据所述判断识别的待测控件对象支持的操作指令构建所述待测控件对象的测试操作指令序列,设置所述待测控件对象在其所属的待测应用程序中的测试权重值,并根据所述测试权重值选取待测控件对象后,针对所述选取的待测控件对象构建的测试操作指令序列。结合第二方面或第二方面的第一种可能的实现方式,在第二种可能的实现方式中,所述执行所述测试操作指令序列之后,还包括:生成执行结果;将所述执行结果发送至所述测试服务器和/或记录所述执行结果中异常情况的时间点并反馈到所述测试服务器。第三方面,本专利技术实施例提供了一种基于控件的自动化测试装置,所述装置包括:控件获取模块,用于获取待测应用程序的待测控件对象,判断识别所述待测控件对象支持的操作指令;指令构建模块,用于根据所述判断识别的待测控件对象支持的操作指令构建所述待测控件对象的测试操作指令序列;权重预设模块,用于设置所述待测控件对象在其所属的待测应用程序中的测试权重值,所述权重值表示所述待测控件对象在其所属的待测应用程序中被执行相应测试操作指令序列的概率;测试执行模块,用于根据所述测试权重值选取待测控件对象,触发待测设备执行针对所述选取的待测控件对象构建的测试操作指令序列。结合第三方面,在第一种可能的实现方式中,所述待测应用程序为待测设备中安装的应用程序,所述控件获取模块,包括:通信连接单元,用于建立与所述待测设备的通信连接;控件获取单元,用于获取所述待测设备中安装的应用程序中的待测控件对象。结合第三方面,在第二种可能的实现方式中,所述控件获取模块,包括:控件判断单元,用于根据所述待测控件对象的属性信息判断所述待测控件对象的类型;指令判断单元,用于根据所述待测控件对象的类型判断所述待测控件对象支持的操作指令。结合第三方面,在第三种可能的实现方式中,所述测试执行模块,包括:状态监测单元,用于检测所述待测应用程序所在的待测设备是否处于空闲状态;指令执行单元,用于若处于空闲状态则对所述选取的待测控件对象执行对应的测试操作指令序列。结合第三方面,在第四种可能的实现方式中,所述测试执行模块,还包括:视频记录单元,用于记录对所述选取的待测控件对象执行对应的测试操作指令序列的测试视频录像;异常提取单元,用于根据所述待测应用程序在测试过程中汇报的异常情况的时间点,在所述测试视频录像中提取所述异常情况的时间点所对应的帧画面并记录保存。结合第三方面,在第五种可能的实现方式中,所述测试执行模块,还包括:分析挖掘单元,用于记录所述待测应用程序的测试情况,对所述记录的测试情况进行分析挖掘。第四方面,本专利技术实施例提供了一种基于控件的自动化测试设备,所述设备包括:指令接收模块,用于接收测试服务本文档来自技高网...
一种基于控件的自动化测试方法及系统

【技术保护点】
一种基于控件的自动化测试方法,其特征在于,包括:获取待测应用程序的待测控件对象,判断识别所述待测控件对象支持的操作指令;根据所述判断识别的待测控件对象支持的操作指令构建所述待测控件对象的测试操作指令序列;设置所述待测控件对象在其所属的待测应用程序中的测试权重值,所述权重值表示所述待测控件对象在其所属的待测应用程序中被执行相应测试操作指令序列的概率;根据所述测试权重值选取待测控件对象,触发待测设备执行针对所述选取的待测控件对象构建的测试操作指令序列。

【技术特征摘要】
1.一种基于控件的自动化测试方法,其特征在于,包括:获取待测应用程序的待测控件对象,判断识别所述待测控件对象支持的操作指令,所述待测应用程序为待测设备中安装的应用程序;根据所述判断识别的待测控件对象支持的操作指令构建所述待测控件对象的测试操作指令序列;设置所述待测控件对象在其所属的待测应用程序中的测试权重值,所述权重值表示所述待测控件对象在其所属的待测应用程序中被执行相应测试操作指令序列的概率;根据所述测试权重值选取待测控件对象,触发所述待测设备执行针对所述选取的待测控件对象构建的测试操作指令序列。2.如权利要求1所述的方法,其特征在于,所述获取待测应用程序的待测控件对象包括:建立与所述待测设备的通信连接;获取所述待测设备中安装的应用程序中的待测控件对象。3.如权利要求1所述的方法,其特征在于,所述判断识别所述待测控件对象支持的操作指令,包括:根据所述待测控件对象的属性信息判断所述待测控件对象的类型;根据所述待测控件对象的类型判断所述待测控件对象支持的操作指令。4.如权利要求1所述的方法,其特征在于,所述根据所述测试权重值选取待测控件对象,触发待测设备执行针对所述选取的待测控件对象构建的测试操作指令序列,包括:检测所述待测应用程序所在的待测设备是否处于空闲状态;若处于空闲状态则对所述选取的待测控件对象执行对应的测试操作指令序列。5.如权利要求1所述的方法,其特征在于,所述根据所述测试权重值选取待测控件对象,触发待测设备执行针对所述选取的待测控件对象构建的测试操作指令序列,还包括:记录对所述选取的待测控件对象执行对应的测试操作指令序列的测试视频录像;根据所述待测应用程序在测试过程中汇报的异常情况的时间点,在所述测试视频录像中提取所述异常情况的时间点所对应的帧画面并记录保存。6.如权利要求1所述的方法,其特征在于,所述根据所述测试权重值选取待测控件对象,触发待测设备执行针对所述选取的待测控件对象构建的测试操作指令序列,还包括:记录所述待测应用程序的测试情况,对所述记录的测试情况进行分析挖掘。7.一种基于控件的自动化测试方法,其特征在于,包括:接收测试服务器发送的交互动作指令;当分析出所述交互动作指令为获取待测应用程序的待测控件对象的指令时,向所述测试服务器发送待测应用程序的待测控件对象信息;以使所述测试服务器判断识别所述待测控件对象支持的操作指令,根据所述判断识别的待测控件对象支持的操作指令构建所述待测控件对象的测试操作指令序列,设置所述待测控件对象在其所属的待测应用程序中的测试权重值,并根据所述测试权重值选取待测控件对象后,发送针对所述选取的待测控件对象构建的测试操作指令序列;接收所述测试服务器发送的测试操作指令序列,并执行所述测试操作指令序列。8.如权利要求7所述的方法,其特征在于,所述接收测试服务器发送的交互动作指令之后,还包括:当分析出所述交互动作指令为测试操作指令序列时,执行所述测试操作指令序列;其中所述测试操作指令序列为所述测试服务器获取待测应用程序的待测控件对象,判断识别所述待测控件对象支持的操作指令,根据所述判断识别的待测控件对象支持的操作指令构建所述待测控件对象的测试操作指令序列,设置所述待测控件对象在其所属的待测应用程序中的测试权重值,并根据所述测试权重值选取待测控件对象后,针对所述选取的待测控件对象构建的测试操作指令序列。9.如权利要求7或8所述的方法,其特征在于,所述执行所述测试操作指令序列之后,还包括:生成执行结果;将所述执行结果发送至所述测试服务器和/或记录所述执行结果中异常情况的时间点并反馈到所述测试服务器。10.一种基于控件的自动化测试装置,其特征在于,包括:控件获取模块,用于获取待测应用程序的待测控件对象,判断识别所述待测控件对象支持的操作指令,所述待测应用程序为待测设备中安装的应用程序;指令构建模块,用于根据所述判断识别的待测控件对象支持的操作指令构建所述待测控件对象的测试操作指令序列;权重预设模块,用于设置所述待测控件对象在其所属的待测应用程序中的测试权重值,所述权重值表示所述待测控件对象在其所属的待测应用程序中被执行相应测试操作指令序列的概率;测试执行模块,用于根据所述测试权重值选取待测控件对象,触发所述待测设备执行针对所述选取的待测控件对象构建的测试操作指令序列。11.如权利要求10所述的装置,其特征在于,所述控件获取模块,包括:通信连接单元...

【专利技术属性】
技术研发人员:杨远波
申请(专利权)人:广东欧珀移动通信有限公司
类型:发明
国别省市:广东;44

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

1