一种系统测试方法及相关装置制造方法及图纸

技术编号:19056622 阅读:37 留言:0更新日期:2018-09-29 12:08
本申请公开了一种软件系统测试方法,包括:首先,确定第一终端中处于老化状态的第一软件组件;与第二终端进行交互以实现与所述第一软件组件对应的老化工具在所述第二终端上的安装,以使得所述第二终端运行所述老化工具对所述第二终端的第一软件组件进行老化并达到所述老化状态,所述第二终端的型号及软件系统版本与所述第一终端相同;向所述第一终端推送用于解决老化问题的软件包,其中,软件包根据第二终端执行达到老化状态的所述第一软件组件对应的功能或执行基于所述第一软件组件实现的功能得到的特征信息生成。本申请实施例可用于快速制造软件组件的老化状态,达到指定的老化效果。

【技术实现步骤摘要】
一种系统测试方法及相关装置
本申请涉及软件测试领域,尤其涉及一种软件系统测试方法及相关装置。
技术介绍
随着多媒体时代的快速发展,人们对终端设备运行的流畅度要求越来越高。但是随着使用时间的增加,终端设备的性能和可靠性会明显降低,例如手机经常会出现软件系统老化的问题,轻微的如卡顿、操作不灵敏等老化问题,严重还会产生如黑屏、莫名重启等等问题,如此一来严重影响了用户体验。而终端内软件老化的根本原因是系统内部状态错误的长期积累和系统资源的不断消耗。传统的测试软件老化问题的方法是通过重复调用某项功能操作,以此模拟用户长期使用的情况,激发出软件老化问题,从而能够发现激发老化问题的老化因子,然后研发人员再根据老化因子和得到的终端检测数据进行分析,找出修复软件组件的方法。当通过重复调用功能操作制造相同的老化状态以便找出老化因子时,从重复调用功能操作到该功能操作引起老化问题之间历经的时间周期太长,并且资源消耗较大,无法及时解决终端出现的老化问题。
技术实现思路
本申请提供了一种软件系统测试方法、相关装置及终端设备,可消耗极少的资源在短时间内使得终端的软件组件快速达到指定的老化状态。有鉴于此,本申请实施例第一方面提供了一种软件系统测试的方法,包括:用户终端向服务器发送第一检测数据或反馈信息使得服务器确定用户终端中处于老化状态的第一软件组件,以使得服务器向用户终端推送软件更新包,该软件更新包中包括修复的软件组件,修复的软件组件为研发人员根据测试终端运行相关的测试实例得到的反馈信息进行修复得到的;其中,所述第一检测数据为所述第一终端对所述第一终端中的软件组件进行检测得到的数据,所述第一检测数据包括所述第一终端内每个软件组件的响应时间以及运行所述每个软件组件时的状态和参数,所述反馈信息用于反馈所述第一终端中处于老化状态的第一软件组件。所述用户终端接收服务器推送的用于解决老化问题的软件包,其中,所述修复后的第一软件组件根据第二终端执行所述第一软件组件对应的功能或执行基于所述第一软件组件实现的功能得到的信息生成。本申请实施例中用户终端出现的老化问题通过在测试终端上复现,并在测试终端上运行相应的测试实例得到反馈信息,研发人员根据该反馈信息修复老化的软件组件,并且服务器打包该软件组件使之成为软件包推送给用户终端进行安装。通过上述方式,用户终端进行检测和安装软件更新包都可由用户随时随地自行完成,无需将用户终端送至厂商,节省了运输时间和运输成本,提高了用户体验本申请实施例第二方面提供了一种软件系统测试的方法,包括:首先,服务器确定第一终端中处于老化状态的第一软件组件,然后研发人员可根据检测数据和第一软件组件的内部原理生成对应的老化工具。针对第一软件组件以及记录的数据和状态等参数,在深入理解软件组件的内部原理和算法的基础上,从工具库中匹配出针对于某一软件组件的老化工具,若没有相匹配的老化工具,研发人员可根据检测数据以及老化软件组件的内部原理等有针对性地实时开发出对应的老化工具。老化工具实质上是根据第一软件组件的内部运行原理以及对终端的检测数据开发出来的应用程序,用于对相应的软件组件进行老化,能够利用极低资源达到快速老化的目的。接着,服务器与第二终端进行交互以实现老化工具在第二终端上的安装,以使得第二终端运行老化工具对第二终端的第一软件组件进行老化并达到上述老化状态,即第二终端中第一软件组件需要达到第一终端中第一软件组件的老化状态,并且第二终端的型号及软件系统的版本与第一终端相同。第二终端在该老化环境下,执行达到所述老化状态的第一软件组件对应的功能或执行基于第一软件组件实现的功能,记录这些功能执行过程中的数据,这些数据可反映激起老化状态的原因以及具体的老化现象,研发人员根据这些特征信息进行分析并生成用于解决上述老化问题的软件包,软件包中可能是研发人员根据特征信息生成的新的第一软件组件,也可能是针对老化的第一软件组件的补丁等等。本申请实施例中,通过开发或直接确定对应的老化工具,并将老化工具部署到相同型号的第二终端(测试终端)上,使得第二终端造成与第一终端(用户终端)同样的老化问题和老化状态,目的是复现出第一终端的老化情况,然后通过运行第二终端上软件组件的相关功能得到特征信息,该特征信息可帮助研发人员分析老化问题。本申请实施例用老化工具代替传统的重复执行终端操作的方法,无需经过从重复执行操作到出现老化问题的漫长过程,也无需对终端进行成千上万次暴力的功能操作,因此能做到利用极低的资源快速制造老化效果并达到指定的老化状态。结合本申请实施例第二方面,本申请实施例第二方面的第一种实施方式中,服务器确定第一终端中处于老化状态的第一软件组件,包括:根据所述第一终端发送的第一检测数据或反馈信息确定第一终端中处于老化状态的所述第一软件组件;其中,所述第一检测数据为所述第一终端对所述第一终端中的软件组件进行检测得到的数据,所述第一检测数据包括所述第一终端内每个软件组件的响应时间以及运行所述每个软件组件时的状态和参数,所述反馈信息用于反馈所述第一终端中处于老化状态的第一软件组件。当服务器根据第一终端发送的第一检测数据确定老化的第一软件组件时,该第一检测数据只是一个中间数据,该数据包括第一终端内每个软件组件的响应时间以及运行所述每个软件组件时的状态和参数,服务器需要根据这些数据分析出处于老化状态的软件组件。此外,第一终端在对自身进行检测之后也可自行分析出处于老化状态的软件组件,将反应老化的软件组件的结果即反馈信息直接上报服务器使得服务器知晓。本申请实施例中不仅服务器具有一定的分析能力,用户终端也具备一定的分析能力,在某些特殊情况下也能直接确定老化的软件组件,这种模式为检测方法提供了多种方案,提高了方案的灵活性和可实施性。结合本申请实施例第二方面的第一种实施方式,本申请实施例第二方面的第二种实施方式中,还包括:服务器确定老化的软件组件的方法还可以是通过第一检测数据和第二检测数据的对比,具体地,服务器获取第二检测数据,第二检测数据为第三终端通过系统或检测程序对所述第三终端中的软件组件进行检测得到的数据,所述第二检测数据包括所述第三终端内每个软件组件的响应时间,所述第三终端为与所述第一终端型号、软件系统版本相同的且未进行老化状态的设备,然后根据所述第一检测数据和所述第二检测数据确定处于老化状态的所述第一软件组件。本申请实施例通过未老化状态下软件组件的响应时间可精确判断出某个软件组件是否已经出现老化,明显降低了误判老化组件的可能性,提高了判断的效率。结合本申请实施例第二方面的第一种实施方式中,本申请实施例第二方面的第二种实施方式中,服务器确定第一终端中处于老化状态的第一软件组件,包括:服务器从第一检测数据中获取第一响应时间,并从第二检测数据组中获取第二响应时间,第一响应时间是第一终端执行第二软件组件获得的,第二响应时间是第三终端执行第二软件组件获得的,第一终端和第三终端应执行同一个软件组件并记录下响应时间,然后计算两个响应时间的差值,若该差值大于预设阈值,则确定第二软件组件为处于老化状态的第一软件组件,若差值小于预设阈值,则说明软件组件未被老化,响应时间在正常的变化范围内。本申请实施例中用未被老化的第三终端作为判断标准可以精确判断出用户终端中已出现老化现象的软件组件本文档来自技高网...

【技术保护点】
1.一种系统测试方法,其特征在于,所述方法包括:确定第一终端中处于老化状态的第一软件组件;与第二终端进行交互以实现与所述第一软件组件对应的老化工具在所述第二终端上的安装,以使得所述第二终端运行所述老化工具对所述第二终端的第一软件组件进行老化并达到所述老化状态,所述第二终端的型号及软件系统版本与所述第一终端相同;向所述第一终端推送用于解决老化问题的软件包,其中,所述软件包根据第二终端执行达到所述老化状态的所述第一软件组件对应的功能或执行基于所述第一软件组件实现的功能得到的特征信息生成。

【技术特征摘要】
1.一种系统测试方法,其特征在于,所述方法包括:确定第一终端中处于老化状态的第一软件组件;与第二终端进行交互以实现与所述第一软件组件对应的老化工具在所述第二终端上的安装,以使得所述第二终端运行所述老化工具对所述第二终端的第一软件组件进行老化并达到所述老化状态,所述第二终端的型号及软件系统版本与所述第一终端相同;向所述第一终端推送用于解决老化问题的软件包,其中,所述软件包根据第二终端执行达到所述老化状态的所述第一软件组件对应的功能或执行基于所述第一软件组件实现的功能得到的特征信息生成。2.根据权利要求1所述的方法,其特征在于,所述确定第一终端中处于老化状态的第一软件组件包括:根据所述第一终端发送的第一检测数据或反馈信息确定第一终端中处于老化状态的所述第一软件组件;其中,所述第一检测数据为所述第一终端对所述第一终端中的软件组件进行检测得到的数据,所述第一检测数据包括所述第一终端内每个软件组件的响应时间以及运行所述每个软件组件时的状态和参数,所述反馈信息用于反馈所述第一终端中处于老化状态的第一软件组件。3.根据权利要求2所述的方法,其特征在于,所述方法还包括:获取第二检测数据,所述第二检测数据为第三终端通过系统或检测程序对所述第三终端中的软件组件进行检测得到的数据,所述第二检测数据包括所述第三终端内每个软件组件的响应时间,所述第三终端为与所述第一终端型号、软件系统版本相同的且未进行老化状态的设备;根据所述第一检测数据和所述第二检测数据确定处于老化状态的所述第一软件组件。4.根据权利要求3所述的方法,其特征在于,根据所述第一检测数据和所述第二检测数据组确定处于老化状态的所述第一软件组件,包括:从所述第一检测数据中获取第一响应时间,并从所述第二检测数据组中获取第二响应时间,所述第一响应时间为所述第一终端执行所述第二软件组件获得,所述第二响应时间为所述第三终端执行所述第二软件组件获得;获取第一差值,所述第一差值为所述第一响应时间和所述第二响应时间的时间差值;若所述第一差值大于预设阈值,则确定所述第二软件组件为处于老化状态的第一软件组件。5.根据权利要求1至4中任一项所述的方法,其特征在于,所述服务器获取第一检测数据之前,所述方法还包括:向所述第一终端发送授权请求,所述授权请求用于指示数据存储云获取第一检测数据。6.一种测试系统,其特征在于,所述测试系统包括服务器和第二终端,包括:所述服务器用于确定所述第一终端中处于老化状态的第一软件组件;所述服务器还用于与所述第二终端交互,以实现与所述第一软件组件对应的老化工具在所述第二终端上的安装;所述第二终端用于运行所述老化工具对所述第二终端的第一软件组件进行老化并达到所述老化状态,所述第二终端的型号及软件系统版本与所述第一终端相同;所述服务器还用于向所述第一终端推送用于解决老化问题的软件包,其中,所述软件包根据所述第二终端执行达到所述老化状态的所述第一软件组件对应的功能或执行基于所述第一软件组件实现的功能得到的特征信息生成。7.根据权利要求6所述的测试系统,其特征在于:所述第二终端用于运行所述老化工具对所述第二终端的第一软件组件进行老化并达到所述老化状态时,具体用于运行所述老化工具并根据预定的老化模型以将所述第一软件组件中的数据存储地址改成能够反映第一软件组件老化状态的不连续的存储地址,其中,所述老化模型用于反映各种不连续存储地址与各种老化状态的对应关系。8.一种系统测试方法,其特征在于,所述方法包括:确定需要进行系统测试的软件组件;根据预定的老化模型将所述软件组件存储的数据的存储地址改为不连续的存储地址以达到预定的老化状态,其中,所述老化模型用于反映各种不连续存储地址与各种老化状态的对应关系;执行所述软件组件对应的功能或者执行基于所述软件组件实现的功能...

【专利技术属性】
技术研发人员:杨晨柳阳伊长双宿敏
申请(专利权)人:华为技术有限公司
类型:发明
国别省市:广东,44

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

1