测试终端的测试触发指令。测试终端执行上述测试触发指令,执行对应的测试程序。基于测试终端执行的所述测试程序,测试终端对执行过程中自身的显示界面进行截图,得到测试图像,并将得到的测试图像上传至服务器;服务器接收测试终端发送的所述测试图像。
[0027]步骤S02、检测客户端发送的获取所述测试图像的操作请求;
[0028]服务器检测客户端发送的获取所述测试图像的操作请求时,根据具体测试需求,服务器可以实时检测是否接收到客户端发送的所述操作请求,也可以按照预设周期进行检测。比如,当客户端对服务器返回的测试图像的时效性要求较高时,服务器实时检测是否接收到所述操作请求;当对服务器的性能及服务器的资源利用率要求较高时,服务器可以按照预设周期检测是否接收到所述操作请求。
[0029]步骤S03、根据所述操作请求,返回所述操作请求映射的测试图像至客户端,以使客户端显示所述测试图像供用户查看对应的测试结果。
[0030]当服务器接收到客户端发送的获取所述测试图像的操作请求时,服务器根据所述操作请求对应的具体请求内容,返回所述请求内容映射的测试图像至客户端,供客户端根据接收到的所述测试图像查看对应的测试结果。
[0031]进一步地,本实施例中,服务器接收到客户端发送的获取所述测试图像的操作请求时,服务器解析上述操作请求,获取所述操作请求对应的请求内容。其中,所述请求内容包括但不限于所述测试终端的机型信息、所述测试终端执行的测试程序的特征信息。根据解析出的请求内容,服务器将所述测试终端的机型信息和/或所述测试程序的特征信息所对应的所述测试图像发送至客户端,供客户端根据接收到的所述测试图像查看对应的测试结果。比如,客户端根据服务器返回的所述测试图像,在同一用户操作界面上一次性显示获取的所述测试图像,便于测试人员在同一操作界面上对获取的上述测试图像进行比对。如图4所示,以客户端同时显示三个测试图像为例,当客户端在同一用户操作界面上,同时显示上述三个测试图像时,测试人员可以一目了然地查看上述测试图像的异同,提高了测试结果查看的便捷性以及测试的智能性。
[0032]在本发明一优选实施例中,服务器根据客户端发送的获取所述测试图像的操作请求,返回所述操作请求映射的所述测试图像至客户端。客户端接收到服务器返回的N个所述测试图像时,直接在同一用户操作界面上一次性比对显示η个所述测试图像;所述N和η均为正数,且η < N。其中,客户端在同一用户操作界面上一次性比对显示η个所述测试图像时,η的具体取值根据用户需求进行选择,比如客户端提供一选择控件,获取到服务器返回的所述测试图像时,发送对应的提示信息,提示用户选择一次性比对显示所述测试图像的个数。默认情况下,客户端根据自身对应的显示界面尺寸设置一次性比对显示的所述测试图像的具体个数,比如默认值为3个;或者,当所述操作请求中携带的对应的测试图像显示个数的信息时,按照所述操作请求中携带的所述显示个数,客户端一次性显示所述显示个数对应的所述测试图像。这是因为,若客户端获取的测试图像数量N较多,比如有几百或者上千个,而客户端对应的用户操作界面的尺寸则比较小,则客户端将获取的上述N个测试图像同时显示在小小的显示屏幕上时,各测试图像的尺寸将会缩小很多,难免会影响测试人员的查看,反而不利用测试结果的比对。
[0033]本发明实施例服务器接收测试终端发送的测试图像;检测客户端发送的获取所述测试图像的操作请求;根据所述操作请求,返回所述操作请求映射的测试图像至客户端,以使客户端显示所述测试图像供用户查看对应的测试结果;相较于现有技术中,需要重复执行大量相同操作的方式,本发明实施例具有提高测试效率的有益效果;进一步地,由于能够将多个测试图像同时显示在客户端,提高了测试结果比对的便捷性,也提高了测试的智能性。
[0034]请再次参照图2,本实施例应用程序的测试方法中,对图2实施例所描述的“步骤S01、服务器接收测试终端发送的测试图像”进行进一步描述。
[0035]本实施例中,服务器接收测试终端发送的测试图像包括但不限于:不同机型的测试终端发送的执行相同测试程序对应的测试图像,同一机型的测试终端发送的执行多个不同测试程序对应的测试图像。服务器将接收到上述测试图像存储至数据库中。进一步地,为了便于服务器根据客户端发送的操作请求查找并获取对应的测试图像,服务器为所存储的测试图像建立索引。比如,服务器首先对存储的测试图像进行分类,例如,将同一机型对应的测试图像存放在同一路径下,或者将执行相同测试程序的测试图像存放在同一路径下等。分类完成后,根据分类依据,服务器为各类测试图像及对应的存储路径,建立索引,便于服务器查找。
[0036]进一步地,本发明应用程序测试方法中,所述测试终端发送的所述测试图像包括:所述测试终端执行所述测试程序时显示界面跳转对应的模拟操作轨迹;也就是说,通过所述测试图像,可以获取测试终端执行测试程序时,触发显示界面跳转所对应的模拟操作轨迹。本实施例中,测试终端在执行所述测试程序时,采用自动化打点截图法对测试终端对应的显示界面进行截图,进而获取对应的测试图像。其中,所述自动化打点截图法可以理解为:模拟执行对应操作时,对触发操作事件的模拟手势的对应的关键触发点(比如起点与终点)进行标记,进而获取对应的模拟操作轨迹,并将包含模拟操作轨迹的显示界面进行截图,获取包含模拟操作轨迹的测试图像。这种操作方式为测试结果分析提供了对应依据,进一步提高了应用程序测试的智能性。
[0037]本发明实施例还提供了一种应用程序测试装置;如图5所示,本发明应用程序测试装置包括:图像接收模块01、检测模块02和图像发送模块03。
[0038]图像接收模块01,用于接收测试终端发送的测试图像;所述测试图像为:所述测试终端执行测试程序时,对所述测试终端显示界面的截图;
[0039]图像接收模块01接收测试终端执行测试程序所发送的测试图像;其中,所述测试图像可以理解为:所述测试终端执行测试程序时,对所述测试终端显示界面的截图。所述测试终端可以理解为:测试触发指令映射的测试机型信息所对应的测试终端,所述测试终端执行的所述测试程序可以理解为:测试触发指令映射的程序特征信息所对应的测试程序;所述程序特征信息包括但不限于:测试程序编号、测试程序名称、测试程序功能描述。比如,其中一测试程序对应的程序功能描述为:进入联系人操作界面,点击添加控件,确认是否进入添加联系人属性界面。
[0040]进一步地,本实施例中,可以在客户端提供一配置界面,供测试人员基于上述配置界面配置对应的测试终端及各测试终端需执行的测试程序。如图3所示,基于客户端显示的上述配置界面,测试人员选择测试终端对应的机型信息及所需执行的测试程序;其中,所述机型信息如图3所示的机型1、机型2......机型N,所述测试程序如图3所示的easel、
case2......case N,在选择完成后,点击“测试”操作控件,即触发测试终端的测试触发指令。测试终端执行上述测试触发指令,执行对