云测试系统中上报测试结果的系统、测试机及方法
技术领域
本发明涉及云测试技术领域,尤其涉及一种云测试系统中上报测试结果的系统、测试机及方法。
背景技术
云测试是基于云计算的一种新型测试方案。云测试服务器提供多种测试平台,用户在本地将需要测试的软件脚本编写好后,上传到云测试平台,就可以在云测试平台上运行该本,实现对软件的测试。
云测试提供一整套测试环境,测试人员利用虚拟桌面等手段登录到该测试环境,就可以立即展开测试。这将软硬件安装、环境配置、环境维护的代价转移给云测试服务商。以现在的虚拟化技术,在测试人员制定硬件配置、软件栈(操作系统、中间件、软件工具)、网络拓扑后,创建一套新的测试环境仅需要很短的时间;如果测试人员可以接受已经创建好的标准测试环境,则可以立即登录进行测试。利用云测试的方式,极大地减少了测试环境的搭建时间,如机器和网络准备、操作系统安装、各种测试工具软件安装等都将节省,只需要提前将需要的配置环境告知云测试服务商,到时直接使用即可,提高了软件测试效率,并节约成本。
使用云测试系统进行测试时,测试人员将被测试的软件提交给云测试服务器,云测试服务器将其部署到多台测试机上;测试机对该软件进行测试,并将生成的测试结果一起打包上传至云测试服务器;云测试服务器读取该数据包中的测试结果,并将测试结果在Web端进行显示。
云测试系统中的测试机可以是虚拟机,也可以是真机。测试机在测试过程的每一步操作中都会产生大量测试结果,一般包括:坐标,如(25,40);截图,如*.png;以及记录(log)文件,如log*.txt。每一个坐标都对应一个截图,或者对应一个截图和一个log文件(当测试机出现宕机或无响应时生成log文件)。测试机将这些测试结果统一打包成一个数据包并上传至云测试服务器;云测试服务器收到数据包后,读取该数据包,将数据包中的测试结果在Web端显示。由于云测试服务器读取数据包的速度慢,导致整个云测试系统上报测试结果的速度慢。
发明内容
本发明提供了一种云测试系统中上报测试结果的系统、测试机及方法,能够提高云测试系统中上报测试结果的速度。
本发明的技术方案是这样实现的:
一种云测试系统中上报测试结果的系统,包括:
测试机,用于将测试结果中的测试结果资源封装成数据包,将测试结果中的测试结果信息赋予变量,将所述数据包和变量分别上传至测试服务器;其中,所述测试结果资源包括坐标及对应的截图或记录文件;所述测试结果信息包括坐标与截图名称或记录文件名称的对应关系;
测试服务器,用于接收所述数据包和变量,从所述变量中提取所述坐标与截图名称或记录文件名称的对应关系,根据所述对应关系匹配所述数据包中坐标及对应的截图或记录文件,显示所述坐标及对应的截图或记录文件。
一种云测试系统中上报测试结果的测试机,所述测试机将测试结果中的测试结果资源封装成数据包,将测试结果中的测试结果信息赋予变量,将所述数据包和变量分别上传至测试服务器;其中,所述测试结果资源包括坐标及对应的截图或记录文件;所述测试结果信息包括坐标与截图名称或记录文件名称的对应关系,用于供测试服务器匹配所述数据包中的坐标及对应的截图或记录文件。
一种云测试系统中上报测试结果的方法,包括:
测试机将测试结果中的测试结果资源封装成数据包,将测试结果中的测试结果信息赋予变量,将所述数据包和变量分别上传至测试服务器;其中,所述测试结果资源包括坐标及对应的截图或记录文件;所述测试结果信息包括坐标与截图名称或记录文件名称的对应关系;
测试服务器接收所述数据包和变量,从所述变量中提取所述坐标与截图名称或记录文件名称的对应关系,根据所述对应关系匹配所述数据包中坐标及对应的截图或记录文件,显示所述坐标及对应的截图或记录文件。
可见,本发明提出的云测试系统中上报测试结果的系统、测试机及方法,通过将测试结果中的测试结果资源和测试结果信息分开,将测试结果信息赋予变量进行上传,可以提高云测试服务器的读取速度,从而从整体上提高云测试系统中上报测试结果的速度。
附图说明
图1为本发明提出的云测试系统中上报测试结果的系统结构示意图;
图2为本发明实施例一中上报测试结果的系统结构示意图;
图3为本发明提出的云测试系统中上报测试结果的测试机结构示意图;
图4为本发明提出的云测试系统中上报测试结果的方法流程图。
具体实施方式
本发明提出一种云测试系统中上报测试结果的系统,如图1为该系统结构示意图,包括:
测试机110,用于将测试结果中的测试结果资源封装成数据包,将测试结果中的测试结果信息赋予变量,将所述数据包和变量分别上传至测试服务器120;其中,所述测试结果资源包括坐标及对应的截图或记录(log)文件;所述测试结果信息包括坐标与截图名称或log文件名称的对应关系;
测试服务器120,用于接收所述数据包和变量,从所述变量中提取所述坐标与截图名称或log文件名称的对应关系,根据所述对应关系匹配所述数据包中坐标及对应的截图或log文件,显示所述坐标及对应的截图或log文件。
此处,log文件只有在测试终端出现宕机或应用无响应(ANR,Application NotResponse)时才会生成。没有出现上述情况时,测试结果资源包括坐标及对应的截图,测试结果信息包括坐标与截图名称的对应关系;出现上述情况时,测试结果资源包括坐标及对应的截图和log文件,测试结果信息包括坐标与截图名称及log文件名称的对应关系。
上述系统中,测试机110可以包括测试终端111和测试客户端112,其中:
测试终端111,用于记录软件测试过程中每一步操作生成的坐标及对应的截图或记录文件,并记录软件测试过程中每一步操作的坐标与截图名称或记录文件名称的对应关系;
测试客户端112,用于将所述测试过程中的每一步操作生成的坐标及对应的截图或记录文件封装成数据包,将所述数据包上传至测试服务器120;并将所述软件测试过程中每一步操作的坐标与截图名称或记录文件名称的对应关系分别赋予变量,将所述变量分别上传至测试服务器120。
上述系统中,
测试服务器120还可以用于,接收用户上传的待测试软件,将待测试软件下发至测试客户端112;
所述测试客户端112还用于,从所述测试服务器120获取待测试软件,将所述待测试软件部署至测试终端111;
所述测试终端还用于111,对所述测试客户端112部署的待测试软件进行测试。
以下参照附图,举具体的实施例详细介绍。
实施例一:
如图2为本发明实施例一中上报测试结果的系统结构示意图,该系统包括测试服务器(Server)、测试客户端(Client)以及作为测试终端的移动设备。其中:
移动设备在软件测试过程中会生成并保存三种文件,分别是:坐标,如(25,40);截图文件,如*.png;log文件,如log*.txt。此外,移动设备还会同时生成一个文件:testresult.txt,testresult.txt文件中记录了该移动设备在软件测试过程中每一步操作的坐标、截图名称和log文件名称的对应关系。需要说明的是,只有在移动设备出现宕机(crash)或者应用无响应(ANR)的情况下才会生成log文件。
Client从移动设备中提取移动设备在测试过程中的每一步操作生成的坐标、截图和log文件(如坐标(25,40),截图*.png和log*.txt文件),将提取的文件封装成数据包(*.zip),将该数据包(*.zip)上传至Server。同时,Client从testresult.txt文件中提取软件测试的每一步操作中坐标、截图名称和log文件名称的对应关系(如(25,40)及对应的*.png名称和log*.txt文件名称),将提取的对应关系分别赋予变量并上传至测试Server。
Server的变量接口读取Client上传的变量中坐标、截图名称和log文件名称的对应关系,根据该对应关系匹配*.zip中坐标及对应的截图和log文件,并在Web端进行显示。
由于Server可以使用变量接口读取变量,而Server使用变量接口读取变量的速度要比直接读取文件的速度快很多,因此本实施例提出的系统能够从整体上提高云测试系统中上报测试结果的速度。
本发明还提出一种云测试系统中上报测试结果的测试机,该测试机将测试结果中的测试结果资源封装成数据包,将测试结果中的测试结果信息赋予变量,将所述数据包和变量分别上传至测试服务器;其中,所述测试结果资源包括坐标及对应的截图或记录文件;所述测试结果信息包括坐标与截图名称或记录文件名称的对应关系,用于供测试服务器匹配所述数据包中的坐标及对应的截图或记录文件。
如图3为该测试机的结构示意图,包括:
测试终端301,用于记录软件测试过程中每一步操作生成的坐标及对应的截图或记录文件,并记录软件测试过程中每一步操作的坐标与截图名称或记录文件名称的对应关系;
测试客户端302,用于将所述测试过程中的每一步操作生成的坐标及对应的截图或记录文件封装成数据包,将所述数据包上传至测试服务器;并将所述软件测试过程中每一步操作的坐标与截图名称或记录文件名称的对应关系分别赋予变量,将所述变量分别上传至测试服务器。
上述测试机中,
测试客户端302还可以用于,从测试服务器获取待测试软件,将所述待测试软件部署至测试终端301;
所述测试终端301还可以用于,对所述测试客户端302部署的待测试软件进行测试。
应用上述云测试系统中上报测试结果的系统及测试机,本发明还提出一种云测试系统中上报测试结果的方法,如图4为该方法的实现流程图,该方法包括:
步骤401:测试机将测试结果中的测试结果资源封装成数据包,将测试结果中的测试结果信息赋予变量,将所述数据包和变量分别上传至测试服务器;其中,所述测试结果资源包括坐标及对应的截图或记录文件;所述测试结果信息包括坐标与截图名称或记录文件名称的对应关系;
步骤402:测试服务器接收所述数据包和变量,从所述变量中提取所述坐标与截图名称或记录文件名称的对应关系,根据所述对应关系匹配所述数据包中坐标及对应的截图或记录文件,显示所述坐标及对应的截图或记录文件。
上述步骤401中,测试机将测试结果中的测试结果资源封装成数据包,将测试结果中的测试结果信息赋予变量,将所述数据包和变量分别上传至测试服务器的方式具体可以为:
测试机中的测试终端记录软件测试过程中每一步操作生成的坐标及对应的截图或记录文件,并记录软件测试过程中每一步操作的坐标与截图名称或记录文件名称的对应关系;
测试机中的测试客户端将所述测试过程中的每一步操作生成的坐标及对应的截图或记录文件封装成数据包,将所述数据包上传至测试服务器;并将所述软件测试过程中每一步操作的坐标与截图名称或记录文件名称的对应关系分别赋予变量,将所述变量分别上传至测试服务器。
上述方法中,步骤401之前可以进一步包括:
测试服务器接收用户上传的待测试软件,将待测试软件下发至测试客户端;测试客户端将所述待测试软件部署至测试终端;测试终端对所述测试客户端部署的待测试软件进行测试。
上述步骤402中,测试服务可以在Web端显示坐标及对应的截图或记录文件。
综上可见,本发明提出的云测试系统中上报测试结果的系统、测试机及方法,通过将测试结果中的测试结果资源和测试结果信息分开,将测试结果信息赋予变量进行上传,可以使测试服务器使用变量接口读取变量中测试结果信息,并根据该信息匹配测试结果资源中的内容。由于测试服务器读取变量的速度比读取文件的速度快,因此能够提高云测试服务器的读取速度,从而从整体上提高云测试系统中上报测试结果的速度。并且,将测试结果中的测试结果资源和测试结果信息分开上传,也提高了数据传输的安全性。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。