发明内容
有鉴于此,本发明的主要目的在于提供一种智能终端软件的压力测试方法,以提高压力测试所能覆盖的智能机型数量,提高测试速度和测试效率。
本发明的又一主要目的在于提供一种智能终端软件的压力测试装置,以提高压力测试所能覆盖的智能机型数量,提高测试速度和测试效率。
本发明的再一主要目的在于提供一种智能终端软件的压力测试系统,以提高压力测试所能覆盖的智能机型数量,提高测试速度和测试效率。
本发明的技术方案是这样实现的:
一种智能终端软件的压力测试方法,包括:
接收智能终端软件及其测试脚本和测试机型列表;
根据所述测试机型列表选定连接在云端的对应机型的智能终端;
将所述智能终端软件及其测试脚本发送给所选定的智能终端;
对所选定的智能终端进行测试控制,该测试控制包括:安装运行所述智能终端软件,并针对该智能终端软件,按照指定的次数重复回放所述测试脚本以实现压力测试。
一种智能终端软件的压力测试装置,包括:
接收模块,用于接收智能终端软件及其测试脚本和测试机型列表;
选择模块,用于根据所述测试机型列表选定连接在云端的对应机型的智能终端;
传送模块,用于将所述智能终端软件及其测试脚本发送给所选定的智能终端;
控制模块,用于对所选定的智能终端进行测试控制,该测试控制包括:安装运行所述智能终端软件,并针对该智能终端软件,按照指定的次数重复回放所述测试脚本以实现压力测试。
一种智能终端软件的压力测试系统,包括:
用户端装置,用于录制智能终端软件的测试脚本,确定测试机型列表,并向测试服务器上传智能终端软件及其测试脚本和测试机型列表;
测试服务器,用于接收智能终端软件及其测试脚本和测试机型列表,根据所述测试机型列表选定连接在云端的对应机型的智能终端,以及选定连接所述智能终端机型的云端测试设备,向所选定的云端测试设备发送测试任务信息,所述测试任务信息包括所述智能终端软件及其测试脚本以及连接该云端测试设备的测试机型列表;
一个以上云端测试设备,用于连接一个以上不同机型的智能终端,在收到所述测试任务信息后,选定所述测试机型列表中列出的与本设备连接的智能终端,将所述智能终端软件及其测试脚本发送到所述选定的智能终端,对所选定的智能终端进行测试控制,该测试控制包括:安装运行所述智能终端软件,并针对该智能终端软件,按照指定的次数重复回放所述测试脚本以实现压力测试。
与现有技术相比,本发明接收开发人员上传的智能终端软件及其测试脚本和测试机型列表,再根据所述测试机型列表选定连接在云端的对应机型的智能终端,将所述智能终端软件及其测试脚本发送给所选定的智能终端;最后对所选定的智能终端进行测试控制,该测试控制包括:安装运行所述智能终端软件,并针对该智能终端软件,按照指定的次数重复回放所述测试脚本以实现压力测试。由于本发明的用于测试的智能终端都连接在云端,而云端的特点是可供测试的机型广泛,数量众多,因此本发明可以提高压力测试所能覆盖的智能机型数量,方便向开发人员提供对智能终端软件进行压力测试的特定的硬件软件场景。而且,本发明在开发人员上传智能终端软件及其测试脚本和测试机型列表后,在云端自动按照指定的次数重复回放所述测试脚本,从而实现压力测试,压力测试的过程不需要开发人员人工干预,因此提高了测试速度和测试效率,降低相关的人力成本。
具体实施方式
下面结合附图及具体实施例对本发明再作进一步详细的说明
图1为本发明所述智能终端软件的压力测试方法的一种流程图;参见图1,该方法具体包括:
步骤101、接收智能终端软件及其测试脚本和测试机型列表。
本发明中,所述智能终端是指具有数据计算处理功能的智能终端,包括但不限于智能手机、掌上电脑、平板电脑、智能电视(Smart TV)等。这些智能终端上都安装有操作系统,包括但不限于:Android操作系统、Symbian操作系统、Windows mobile操作系统、以及苹果iPhone OS操作系统等等。所述的被测的智能终端软件可以是操作系统,也可以是基于所述操作系统可以在所述智能终端中运行的应用程序(APP)。本文所述的实施例中,具体以所述被测智能终端软件为基于andriod操作系统的APP为例说明具体的技术细节。
本发明所述的压力测试,是为了测试智能终端软件在特定场景下耐受力,所谓特定场景下的压力测试,就是在特定的硬件软件场景下对智能终端软件反复多次执行同一个或同几个动作,从而查看智能终端软件对这一个或几个动作的耐受力。所述特定的硬件软件场景包括但不限于智能终端的机型(不同的机型其硬件分辨率、性能以及操作系统版本都有可能不同)、需要执行的软件测试动作等。例如,对于手机相机APP软件,需要测试在各种不同智能终端机型的情况下快速重复执行多次拍照动作,从而查看该相机APP是否会出现异常以及何种异常等;再例如,对于手机操作系统软件,需要测试在各种不同智能终端机型上快速重复执行多次拨打电话的动作,从而查看手机操作系统是否会出现异常以及何种异常等等。
在步骤101中,所述智能终端软件是开发人员所开发的需要测试的被测智能终端软件,所述测试脚本是开发人员自行录制的一段测试脚本。所述测试脚本是一种程序代码,该程序代码可以被智能终端自动运行,用于自动测试被测软件的各项功能。例如对于基于android操作系统的被测APP,与该被测APP关联的自动测试APP的自动测试脚本可以利用Instrumentation框架进行编写。所述Instrumentation是google官方为android操作系统测试提供的一种技术,该技术是一系列对android操作系统进行控制的方法的集合,可以在基于android的APP的正常生命周期之外独立地控制android应用的各个组件。因此利用Instrumentation可以方便地编写出对被测APP的自动测试脚本,而且自动测试脚本运行后可以由Instrumentation框架提供测试结果。至于所述测试脚本的具体内容,需要根据被测智能终端软件的功能和测试人员的测试需求确定。
另外,所述测试机型列表也是由开发人员选定的希望进行压力测试的智能终端机型列表,可以预先将云端所支持的所有智能终端机型信息提供给开发人员,开发人员可以从中选择任意机型上传以进行压力测试。所述开发人员可以将智能终端软件及其测试脚本和测试机型列表上传给测试服务器,由该测试服务器接收智能终端软件及其测试脚本和测试机型列表。
步骤102、根据所述测试机型列表选定连接在云端的对应机型的智能终端。
本发明所述用于测试的一个以上的不同机型的智能终端连接在云端,所述云端具体包括云端测试设备。所述云端测试设备通常可以是设置在云端的一台或多台计算机,每台计算机通过多条数据线连接多个不同机型的智能终端,这些智能终端中预先安装有驱动程序,该驱动程序用于与所述云端测试设备进行通信,并可驱动智能终端执行云端测试设备的控制指令。由于云端需要具备的智能终端型号众多,一台计算机可能没有足够的接口无法连接所有型号的智能终端,因此通常所述作为云端测试设备的计算机可能会有多台,通常采用集群计算机设置,每一台计算机都连接有多种型号的智能终端。每台云端测试设备都连接哪些型号的智能终端的信息可以都汇总在一个记录表中,存储在测试服务器中,步骤102可以由测试服务器执行。通过该记录表,测试服务器可以选定所述测试机型列表中包括的对应机型的智能终端连接在哪个云端测试设备上。
步骤103、将所述智能终端软件及其测试脚本发送给所选定的智能终端。
本步骤中,具体包括:根据所述测试机型列表所选定的对应机型的智能终端,查找这些智能终端都连接在哪台云端测试设备上,即选定连接有所选定的智能终端的云端测试设备,向所选定的云端测试设备发送测试任务信息,所述测试任务信息包括:所述被测的智能终端软件及其测试脚本以及连接该云端测试设备的测试机型列表。所述测试任务信息中可以直接包括所述智能终端软件,也可以是包括该智能终端软件的下载地址,由云端测试设备可以根据该下载地址下载该智能终端软件。例如接收到的开发人员所选的测试机型列表中包括机型1、机型2、机型5、机型6、机型7,如果机型1和机型2与云端测试设备1连接,机型5、机型6、机型7与云端测试设备2连接,那么选定云端测试设备1和云端测试设备2;分别向这两个云端测试设备发送测试任务,其中给云端测试设备1发送的测试任务信息中包括连接该云端测试设备1的机型列表即机型1和机型2,给云端测试设备2发送的测试任务信息中包括连接该云端测试设备2的机型列表即机型5、机型6和机型7。所述云端测试设备1接收到测试任务后,与所述机型1和机型2的智能终端建立通信,将所述智能终端软件和测试脚本发送给该机型1和机型2的智能终端,所述云端测试设备2接收到测试任务后,与所述机型5、机型6和机型7的智能终端建立通信,将所述智能终端软件和测试脚本发送给该机型5、机型6和机型7的智能终端。
步骤104、对所选定的智能终端进行测试控制,该测试控制包括:安装运行所述智能终端软件,并针对该智能终端软件,按照指定的次数重复回放所述测试脚本以实现压力测试。所述指定的次数可以是默认设置的,也可以由开发人员设置并上传到测试服务器,并由测试服务器连同所述测试任务信息发送给对应的云端测试设备。
此处需要预先在所述需要进行测试控制的智能终端上安装驱动程序,可以给该驱动程序发出控制指令,从而控制该智能终端。
例如上述例子中,所述云端测试设备1分别对该机型1和机型2的智能终端进行所述测试控制。所述云端测试设备2分别对该机型5、机型6和机型7的智能终端进行所述测试控制。也就是说针对所述测试机型列表中所列出的每一种机型的智能终端,都要对该智能终端进行所述测试控制,即:安装运行所述智能终端软件,并针对该智能终端软件,按照指定的次数重复回放所述测试脚本以实现压力测试。
在一种具体实施例中,步骤104中所述针对所述智能终端软件,按照指定的次数重复回放所述测试脚本以实现压力测试,具体包括:分析所述测试脚本的内容,根据该测试脚本的内容部署所述智能终端的测试场景,例如如果测试脚本要测试图片浏览软件的图片播放功能,则需要在所述智能终端上部署被播放的图片样本;如果要测试手机的拨号功能,则在手机上部署指定的测试电话号码,供测试脚本拨打所述测试电话号码等等,然后在所述测试场景中,按照指定的次数重复回放所述测试脚本,从而完成在指定的智能终端机型中,在特定场景下对被测智能终端软件进行压力测试。
在另一种具体实施例中,步骤104中所述针对所述智能终端软件,在按照指定的次数重复回访所述测试脚本时,还可以进一步包括:控制所述智能终端监听该智能终端软件在该智能终端中的运行状态,例如该智能终端软件是否发生错误、是否崩溃等信息,并记录所监听到的运行状态信息;从所述运行状态信息中分析出所述压力测试的结果。通常,所述监听到的运行状态信息会记录在该智能终端的日志(如手机日志)中;因此,所述从运行状态信息中分析出所述压力测试的结果的具体方法包括:读取并分析所述智能终端日志,从中找到所述智能终端软件标识(通常是软件包的包名)对应的日志信息,该日志信息中包括该智能终端软件在该智能终端中的运行状态信息,根据该运行状态信息分析出压力测试正常或异常的信息。
在进一步的实施例中,所述针对所述智能终端软件,在按照指定的次数重复回访所述测试脚本时,还可以进一步包括:监听所述智能终端的运行状态,例如该监听该智能终端本身是否发生中断、死机、重启等故障状态,将监听到的该智能终端的运行状态信息作为所述压力测试的一部分测试结果。
进一步的,该方法还可以进一步包括:将所述智能终端软件在所选定的智能终端的压力测试结果保存在指定存储模块,根据查看请求,从所述存储模块中读取所请求的压力测试结果并输出显示。也就是说,对于每种选中的智能终端机型所进行的针对被测智能终端软件的压力测试结果,都存储在指定的存储模块(如数据库)中,其中每条记录可以包括:被测的智能终端软件、被测机型、测试脚本的编号或内容、以及对应的压力测试结果,从而可以供后续随时访问这些压力测试结果。
通过本发明,可以接收开发人员上传的智能终端软件及其测试脚本和测试机型列表,再根据所述测试机型列表选定连接在云端的对应机型的智能终端,将所述智能终端软件及其测试脚本发送给所选定的智能终端;最后对所选定的智能终端进行测试控制,该测试控制包括:安装运行所述智能终端软件,并针对该智能终端软件,按照指定的次数重复回放所述测试脚本以实现压力测试。由于本发明的用于测试的智能终端都连接在云端,而云端的特点是可供测试的机型广泛,数量众多,因此本发明可以提高压力测试所能覆盖的智能机型数量,方便向开发人员提供对智能终端软件进行压力测试的特定的硬件软件场景。而且,本发明在开发人员上传智能终端软件及其测试脚本和测试机型列表后,在云端自动按照指定的次数重复回放所述测试脚本,从而实现压力测试,压力测试的过程不需要开发人员人工干预,因此提高了测试速度和测试效率,降低相关的人力成本。
与本发明所述的方法对应,本发明还公开了一种智能终端软件的压力测试装置,用于执行本发明所述的方法。图2为本发明所述一种智能终端软件的压力测试装置的组成示意图。参见图2,该装置包括:
接收模块201,用于接收智能终端软件及其测试脚本和测试机型列表。
所述智能终端软件是开发人员所开发的需要测试的被测智能终端软件,所述测试脚本是开发人员自行录制的一段测试脚本。所述测试机型列表也是由开发人员选定的希望进行压力测试的智能终端机型列表,可以预先将云端所支持的所有智能终端机型信息提供给开发人员,开发人员可以从中选择任意机型上传以进行压力测试。所述智能终端软件及其测试脚本和测试机型列表由开发人员上传。
选择模块202,用于根据所述测试机型列表选定连接在云端的对应机型的智能终端。
传送模块203,用于将所述智能终端软件及其测试脚本发送给所选定的智能终端。
控制模块204,用于对所选定的智能终端进行测试控制,该测试控制包括:安装运行所述智能终端软件,并针对该智能终端软件,按照指定的次数重复回放所述测试脚本以实现压力测试。为了对所选定的智能终端进行控制,需要预先在该智能终端上安装驱动程序,可以给该驱动程序发出控制指令,从而控制该智能终端。
本发明所述用于测试的一个以上的不同机型的智能终端连接在云端,所述云端具体包括云端测试设备。所述云端测试设备通常可以是设置在云端的一台或多台计算机,每台计算机通过多条数据线连接多个不同机型的智能终端,这些智能终端中预先安装有驱动程序,该驱动程序用于与所述云端测试设备进行通信,并可驱动智能终端执行云端测试设备的控制指令。如果云端测试设备的计算能力足够强大,而且可以连接智能终端的接口也足够多,所述接收模块201、选择模块202、传送模块203和控制模块204可以设置在一台云端测试设备中。但是在计算机能力有限的情况下,由于云端需要具备的智能终端型号众多,一台计算机可能没有足够的接口无法连接所有型号的智能终端,计算能力也有限,因此通常所述作为云端测试设备的计算机可能会有多台,通常采用集群计算机设置,每一台计算机都连接有多种型号的智能终端。每台云端测试设备都连接哪些型号的智能终端的信息可以都汇总在一个记录表中,存储在测试服务器中,由测试服务器集中管理所述云端测试设备。所述接收模块201、选择模块202可以设置在测试服务器中,所述传送模块203和控制模块204可以设置在每台云端测试设备中。通过所述记录表,测试服务器可以选定所述测试机型列表中包括的对应机型的智能终端连接在哪个云端测试设备上。
在一种具体的实施例中,所述传送模块203具体包括任务分解模块和软件发送模块:
任务分解模块,可以设置在测试服务器中,用于选定连接有所选定的智能终端机型的云端测试设备,向所选定的云端测试设备发送测试任务信息,所述测试任务信息包括所述智能终端软件及其测试脚本以及连接该云端测试设备的测试机型列表。例如接收到的开发人员所选的测试机型列表中包括机型1、机型2、机型5、机型6、机型7,如果机型1和机型2与云端测试设备1连接,机型5、机型6、机型7与云端测试设备2连接,那么选定云端测试设备1和云端测试设备2;分别向这两个云端测试设备发送测试任务,其中给云端测试设备1发送的测试任务信息中包括连接该云端测试设备1的机型列表即机型1和机型2,给云端测试设备2发送的测试任务信息中包括连接该云端测试设备2的机型列表即机型5、机型6和机型7。
软件发送模块,用于设置在云端测试设备上,用于在云端测试设备收到所述测试任务信息后,选定所述测试机型列表中列出的且与本设备连接的智能终端,将所述智能终端软件及其测试脚本发送到所述选定的智能终端,触发控制模块对所选定的智能终端进行所述测试控制。如上述例子中,所述云端测试设备1接收到测试任务后,与所述机型1和机型2的智能终端建立通信,将所述智能终端软件和测试脚本发送给该机型1和机型2的智能终端,然后分别对该机型1和机型2的智能终端进行所述测试控制。所述云端测试设备2接收到测试任务后,与所述机型5、机型6和机型7的智能终端建立通信,将所述智能终端软件和测试脚本发送给该机型5、机型6和机型7的智能终端,然后分别对该机型5、机型6和机型7的智能终端进行所述测试控制。也就是说针对所述测试机型列表中所列出的每一种机型的智能终端,都要对该智能终端进行所述测试控制,即:安装运行所述智能终端软件,并针对该智能终端软件,按照指定的次数重复回放所述测试脚本以实现压力测试。
在一种具体实施例中,所述控制模块204针对所述智能终端软件,按照指定的次数重复回放所述测试脚本以实现压力测试,具体包括:分析所述测试脚本的内容,根据该测试脚本的内容部署所述智能终端的测试场景,例如如果测试脚本要测试图片浏览软件的图片播放功能,则需要在所述智能终端上部署被播放的图片样本;如果要测试手机的拨号功能,则在手机上部署指定的测试电话号码,供测试脚本拨打所述测试电话号码等等,然后控制所述智能终端在所述测试场景中,按照指定的次数重复回放所述测试脚本,从而完成在指定的智能终端机型中,在特定场景下对被测智能终端软件进行压力测试。
在一种具体实施例中,所述控制模块204进一步用于:针对所述智能终端软件,在智能终端按照指定的次数重复回访所述测试脚本时,控制所述智能终端监听该智能终端软件的运行状态,例如该智能终端软件是否发生错误、是否崩溃等信息,并记录所监听到的运行状态信息;从所述运行状态信息中分析出所述压力测试的结果。通常,所述监听到的运行状态信息会记录在该智能终端的日志(如手机日志)中;因此,所述控制模块204从运行状态信息中分析出所述压力测试的结果,具体包括:读取并分析所述智能终端日志,从中找到所述智能终端软件标识(通常是软件包的包名)对应的日志信息,该日志信息中包括该智能终端软件的运行状态信息,根据该运行状态信息分析出压力测试正常或异常的信息。
图3为本发明所述智能终端软件的压力测试装置的又一组成示意图。参见图3,该装置进一步包括终端监听模块205,用于在控制模块进行测试控制时,监听所述智能终端的运行状态,例如该监听该智能终端本身是否发生中断、死机、重启等故障状态,将监听到的该智能终端的运行状态信息作为所述压力测试的一部分测试结果。
在上述任一项所述的压力测试装置的实施例中,该装置还可以进一步包括存储控制模块和显示控制模块,参见图3:
存储控制模块206,用于将所述智能终端软件在所选定的智能终端的压力测试结果保存在指定存储模块;
显示控制模块207,用于根据查看请求,从所述存储模块中读取所请求的压力测试结果并输出显示。
对应的,本发明还公开了一种智能终端软件的压力测试系统。图4为本发明所述智能终端软件的压力测试系统的一种组成示意图。参见图4,该压力测试系统包括:
用户端装置401,用于录制智能终端软件的测试脚本,确定测试机型列表,并向测试服务器上传智能终端软件及其测试脚本和测试机型列表。
该用户端装置401可以安装在开发人员侧的计算机上,也可以是网页版,由开发人员利用浏览器访问该网页版的用户端装置。所述智能终端软件是开发人员所开发的需要测试的被测智能终端软件,所述测试脚本是开发人员通过所述用户端装置101自行录制的一段测试脚本。所述测试机型列表也是由开发人员选定的希望进行压力测试的智能终端机型列表,可以预先通过用户端装置101将云端所支持的所有智能终端机型信息提供给开发人员,开发人员可以从中选择任意机型上传以进行压力测试。所述智能终端软件及其测试脚本和测试机型列表由开发人员通过用户端装置401上传到测试服务器402。
测试服务器402,用于接收智能终端软件及其测试脚本和测试机型列表,根据所述测试机型列表选定连接在云端的对应机型的智能终端,以及选定连接所述智能终端机型的云端测试设备,向所选定的云端测试设备发送测试任务信息,所述测试任务信息包括所述智能终端软件及其测试脚本以及连接该云端测试设备的测试机型列表。所述测试任务信息中可以直接包括所述智能终端软件,也可以是包括该智能终端软件的下载地址,由云端测试设备可以根据该下载地址下载该智能终端软件。
一个以上云端测试设备403,用于连接一个以上不同机型的智能终端,在收到所述测试任务信息后,选定所述测试机型列表中列出的与本设备连接的智能终端,将所述智能终端软件及其测试脚本发送到所述选定的智能终端,对所选定的智能终端进行测试控制,为了进行测试控制,需要预先在智能终端上安装驱动程序,可以给该驱动程序发出控制指令,从而控制该智能终端。所述测试控制包括:安装运行所述智能终端软件,并针对该智能终端软件,按照指定的次数重复回放所述测试脚本以实现压力测试。
例如,如果测试服务器402接收到的开发人员所选的测试机型列表中包括机型1、机型2、机型5、机型6、机型7,如果机型1和机型2与云端测试设备1连接,机型5、机型6、机型7与云端测试设备2连接,那么测试服务器402会分解任务,即:选定云端测试设备1和云端测试设备2,分别向这两个云端测试设备发送测试任务,其中给云端测试设备1发送的测试任务信息中包括连接该云端测试设备1的机型列表即机型1和机型2,给云端测试设备2发送的测试任务信息中包括连接该云端测试设备2的机型列表即机型5、机型6和机型7。所述云端测试设备1接收到测试任务后,与所述机型1和机型2的智能终端建立通信,将所述智能终端软件和测试脚本发送给该机型1和机型2的智能终端,然后分别对该机型1和机型2的智能终端进行所述测试控制。所述云端测试设备2接收到测试任务后,与所述机型5、机型6和机型7的智能终端建立通信,将所述智能终端软件和测试脚本发送给该机型5、机型6和机型7的智能终端,然后分别对该机型5、机型6和机型7的智能终端进行所述测试控制。也就是说针对所述测试机型列表中所列出的每一种机型的智能终端,都要对该智能终端进行所述测试控制,即:安装运行所述智能终端软件,并针对该智能终端软件,按照指定的次数重复回放所述测试脚本以实现压力测试。
下面针对某一种机型的智能终端为例,说明所述测试过程。
在一种具体实施例中,所述云端测试设备403针对所述智能终端软件,按照指定的次数重复回放所述测试脚本以实现压力测试,具体包括:云端测试设备403分析所述测试脚本的内容,根据该测试脚本的内容部署所述智能终端的测试场景,例如如果测试脚本要测试图片浏览软件的图片播放功能,则需要在所述智能终端上部署被播放的图片样本;如果要测试手机的拨号功能,则在手机上部署指定的测试电话号码,供测试脚本拨打所述测试电话号码等等,然后控制所述智能终端在所述测试场景中,按照指定的次数重复回放所述测试脚本,从而完成在指定的智能终端机型中,在特定场景下对被测智能终端软件进行压力测试。
在一种具体的实施例中,所述云端测试设备403进一步用于:针对所述智能终端软件,在智能终端按照指定的次数重复回访所述测试脚本时,控制所述智能终端监听该智能终端软件的运行状态,例如该智能终端软件是否发生错误、是否崩溃等信息,并记录所监听到的运行状态信息;从所述运行状态信息中分析出所述压力测试的结果。通常,所述监听到的运行状态信息会记录在该智能终端的日志(如手机日志)中;因此,所述云端测试设备403从运行状态信息中分析出所述压力测试的结果的具体方式包括:读取并分析所述智能终端日志,从中找到所述智能终端软件标识(通常是软件包的包名)对应的日志信息,该日志信息中包括该智能终端软件的运行状态信息,根据该运行状态信息分析出压力测试正常或异常的信息。
在一种具体的实施例中,所述云端测试设备403进一步用于:在智能终端针对所述智能终端软件,按照指定的次数重复回访所述测试脚本时,监听所述智能终端的运行状态,例如该监听该智能终端本身是否发生CPU过忙、中断、死机、重启等故障状态,将监听到的该智能终端的运行状态信息作为所述压力测试的一部分测试结果。
在一种具体的实施例中,所述测试服务器402还可以进一步监听每个云端测试设备的运行状态,例如该云端测试设备的CPU使用率、中断、死机等异常状态,所述云端测试设备403所监听到的所述智能终端的运行状态信息也上报给测试服务器402,测试服务器将所述云端测试设备的运行状态信息及其所连的智能终端的运行状态信息实时更新到指定的存储模块(如数据库中),参见图5;当测试服务器接收到接收智能终端软件及其测试脚本和测试机型列表,根据所述测试机型列表选定连接在云端的对应机型的智能终端时,会根据存储模块中的实时的云端测试设备及其所连的智能终端的运行状态来选定所述测试机型,如果某一智能终端或云端测试设备异常(如CPU过忙、发生以外中断、死机等情况),则会针对该智能终端或云端测试设备暂时本发明所述的压力测试,直到该智能终端或云端测试设备恢复正常后再继续对其进行本发明所述的压力测试。
在一种具体的实施例中,所述云端测试设备403还可以进一步用于:将所述智能终端软件在所选定的智能终端的压力测试结果上传到测试服务器402或者直接上传到指定的存储模块,如数据库,参见图5;所述测试服务器402进一步用于,将所述压力测试结果保存在指定存储模块,并根据查看请求,从所述存储模块中读取所请求的压力测试结果并输出显示。
另外,本发明的每一个实施例可以通过由数据处理设备如计算机执行的数据处理程序来实现。显然,数据处理程序构成了本发明。此外,通常存储在一个存储介质中的数据处理程序通过直接将程序读取出存储介质或者通过将程序安装或复制到数据处理设备的存储设备(如硬盘和或内存)中执行。因此,这样的存储介质也构成了本发明。存储介质可以使用任何类型的记录方式,例如纸张存储介质(如纸带等)、磁存储介质(如软盘、硬盘、闪存等)、光存储介质(如CD-ROM等)、磁光存储介质(如MO等)等。
因此本发明还公开了一种存储介质,其中存储有数据处理程序,该数据处理程序用于执行本发明上述方法的任何一种实施例。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。