应用程序测试方法、装置、系统、电子设备及存储介质制造方法及图纸

技术编号:21658449 阅读:29 留言:0更新日期:2019-07-20 05:35
本说明书实施例提供了一种应用程序测试方法,通过监听用户通过第一终端设备对待测应用程序执行的第一用户操作,基于第一用户操作生成测试脚本,并将测试脚本发送到服务器,由服务器将测试脚本发送给一个或多个当前处于空闲状态且预先通过将设备信息注册到服务器与服务器建立通信连接的第二终端设备执行,实现对待测应用程序进行测试。本方案极大地方便了用户录制测试脚本,有利于简化用户操作。

Application testing methods, devices, systems, electronic devices and storage media

【技术实现步骤摘要】
应用程序测试方法、装置、系统、电子设备及存储介质
本说明书实施例涉及软件
,尤其涉及一种应用程序测试方法、装置、系统、电子设备及存储介质。
技术介绍
云测是指在将应用程序大规模推送给用户之前,使用一系列方法和工具提前运行应用程序,模拟真实的生产环境,监测运行情况,发现功能、安全、兼容性等可能出现的问题,以保证最终用户使用到的应用程序尽可能稳定可靠。目前市面上的云测平台方案是由编程人员在自动化框架上编写脚本,调试完成后把脚本同步到服务器,不方便用户操作。
技术实现思路
本说明书实施例提供了一种应用程序测试方法、装置、系统、电子设备及存储介质。第一方面,本说明书实施例提供了一种应用程序测试方法,应用于第一终端设备,包括:检测用户是否触发第一预设指令;当检测到所述用户触发第一预设指令时,监听所述用户通过所述第一终端设备对待测应用程序执行的第一用户操作,并基于所述第一用户操作生成测试脚本;将所述测试脚本发送到服务器,以使得所述服务器将所述测试脚本发送给一个或多个当前处于空闲状态的第二终端设备执行,其中,所述第二终端设备为预先通过将设备信息注册到所述服务器与所述服务器建立通信连接的终端设备。第二方面,本说明书实施例提供了一种应用程序测试方法,应用于第二终端设备,包括:向服务器发送注册请求,所述注册请求包括第二终端设备的设备信息,以使得所述服务器将所述设备信息存储在预先设置的设备信息库中;当接收到所述服务器基于所述注册请求反馈的注册成功确认信息时,建立所述第二终端设备与所述服务器之间的通信连接;当接收到所述服务器下发的对应于待测应用程序的测试脚本时,执行所述测试脚本。第三方面,本说明书实施例提供了一种应用程序测试方法,应用于服务器,包括:当接收到第一终端设备发送的测试脚本时,基于所述测试脚本,确定一个或多个当前处于空闲状态的第二终端设备,其中,所述第二终端设备为预先通过向所述服务器发送注册请求与所述服务器之间建立通信连接的终端设备;将所述测试脚本发送给所述一个或多个当前处于空闲状态的第二终端设备,以使得所述第二终端设备执行所述测试脚本。第四方面,本说明书实施例提供了一种应用程序测试装置,应用于第一终端设备,包括:第一检测模块,用于检测用户是否触发第一预设指令;脚本生成模块,用于当检测到所述用户触发第一预设指令时,监听所述用户通过所述第一终端设备对待测应用程序执行的第一用户操作,并基于所述第一用户操作生成测试脚本;第一脚本发送模块,用于将所述测试脚本发送到服务器,以使得所述服务器将所述测试脚本发送给一个或多个当前处于空闲状态的第二终端设备执行,其中,所述第二终端设备为预先通过将设备信息注册到所述服务器与所述服务器建立通信连接的终端设备。第五方面,本说明书实施例提供了一种应用程序测试装置,应用于第二终端设备,包括:第二注册模块,用于向服务器发送注册请求,所述注册请求包括第二终端设备的设备信息,以使得所述服务器将所述设备信息存储在预先设置的设备信息库中;第一连接模块,用于当接收到所述服务器基于所述注册请求反馈的注册成功确认信息时,建立所述第二终端设备与所述服务器之间的通信连接;执行模块,用于当接收到所述服务器下发的对应于待测应用程序的测试脚本时,执行所述测试脚本。第六方面,本说明书实施例提供了一种应用程序测试装置,应用于服务器,包括:脚本接收模块,用于当接收到第一终端设备发送的测试脚本时,基于所述测试脚本,确定一个或多个当前处于空闲状态的第二终端设备,其中,所述第二终端设备为预先通过向所述服务器发送注册请求与所述服务器之间建立通信连接的终端设备;第二脚本发送模块,用于将所述测试脚本发送给所述一个或多个当前处于空闲状态的第二终端设备,以使得所述第二终端设备执行所述测试脚本。第七方面,本说明书实施例提供了一种云测试系统,包括:第一终端设备、服务器以及第二终端设备。其中,第一终端设备,用于检测用户是否触发第一预设指令;当检测到所述用户触发第一预设指令时,监听所述用户通过所述第一终端设备对待测应用程序执行的第一用户操作,并基于所述第一用户操作生成测试脚本;将所述测试脚本发送到服务器。服务器,用于基于所述测试脚本,确定一个或多个当前处于空闲状态的第二终端设备;将所述测试脚本发送给所述一个或多个当前处于空闲状态的第二终端设备;其中,所述第二终端设备为预先通过向所述服务器发送注册请求与所述服务器之间建立通信连接的终端设备。第二终端设备,用于当接收到对应于待测应用程序的测试脚本时,执行所述测试脚本。第八方面,本说明书实施例提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述第一方面提供的应用程序测试方法或上述第二方面提供的应用程序测试方法或上述第三方面提供的应用程序测试方法的步骤。第九方面,本说明书实施例提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述第一方面提供的应用程序测试方法或上述第二方面提供的应用程序测试方法或上述第三方面提供的应用程序测试方法的步骤。本说明书实施例有益效果如下:本说明书实施例提供的应用程序测试方法,当检测到用户触发第一预设指令时,监听用户通过第一终端设备对待测应用程序执行的第一用户操作,并将用户所执行的第一用户操作均转换为测试脚本,实现测试脚本的录制,然后将测试脚本发送到服务器,由服务器将测试脚本发送给一个或多个当前处于空闲状态的第二终端设备,以使得第二终端设备对测试脚本进行回放,实现对待测应用程序的测试。通过本方案直接录制测试脚本,有利于简化用户操作。此外,第二终端设备通过将设备信息注册到服务器,实现与服务器之间的通信连接,相比于通过数据线连接的方式,设备管理更加灵活,有利于提高资源的利用率。附图说明图1为适用于本说明书实施例的一种运行环境示意图;图2为本说明书实施例第一方面提供的应用程序测试方法的第一测试过程的流程图;图3为本说明书实施例第一方面提供的应用程序测试方法的第二测试过程的流程图;图4为本说明书实施例第一方面提供的Socket通信过程的时序图;图5为本说明书实施例第二方面提供的应用程序测试方法的一种测试过程的流程图;图6为本说明书实施例第二方面提供的应用程序测试方法的另一种测试过程的流程图;图7为本说明书实施例第三方面提供的应用程序测试方法的流程图;图8为本说明书实施例第四方面提供的应用程序测试装置的结构示意图;图9为本说明书实施例第五方面提供的应用程序测试装置的结构示意图;图10为本说明书实施例第六方面提供的应用程序测试装置的结构示意图;图11为本说明书实施例第七方面提供的云测试系统的结构示意图;图12为本说明书实施例第八方面提供的电子设备的结构示意图。具体实施方式为了更好的理解上述技术方案,下面通过附图以及具体实施例对本说明书实施例的技术方案做详细的说明,应当理解本说明书实施例以及实施例中的具体特征是对本说明书实施例技术方案的详细的说明,而不是对本说明书技术方案的限定,在不冲突的情况下,本说明书实施例以及实施例中的技术特征可以相互组合。请参见图1,为适用于本说明书实施例的一种运行环境示意图。如图1所示,一个或多个终端设备100(图1中仅示出四个)可通过网络200与一个或多个服务器本文档来自技高网...

【技术保护点】
1.一种应用程序测试方法,应用于第一终端设备,包括:检测用户是否触发第一预设指令;当检测到所述用户触发第一预设指令时,监听所述用户通过所述第一终端设备对待测应用程序执行的第一用户操作,并基于所述第一用户操作生成测试脚本;将所述测试脚本发送到服务器,以使得所述服务器将所述测试脚本发送给一个或多个当前处于空闲状态的第二终端设备执行,其中,所述第二终端设备为预先通过将设备信息注册到所述服务器与所述服务器建立通信连接的终端设备。

【技术特征摘要】
1.一种应用程序测试方法,应用于第一终端设备,包括:检测用户是否触发第一预设指令;当检测到所述用户触发第一预设指令时,监听所述用户通过所述第一终端设备对待测应用程序执行的第一用户操作,并基于所述第一用户操作生成测试脚本;将所述测试脚本发送到服务器,以使得所述服务器将所述测试脚本发送给一个或多个当前处于空闲状态的第二终端设备执行,其中,所述第二终端设备为预先通过将设备信息注册到所述服务器与所述服务器建立通信连接的终端设备。2.根据权利要求1所述的方法,所述检测用户是否触发第一预设指令之前,还包括:向所述服务器发起注册请求,所述注册请求包括所述第一终端设备的设备信息,以使得所述服务器将所述设备信息存储在预先设置的设备信息库中;当接收到所述服务器基于所述注册请求反馈的注册成功确认信息时,建立所述第一终端设备与所述服务器之间的通信连接。3.根据权利要求1所述的方法,还包括:检测所述用户是否触发第二预设指令,当所述用户触发第二预设指令时,建立与目标测试设备之间的通信连接,其中,所述目标测试设备包括一个或多个当前处于空闲状态的第二终端设备;监听所述用户对所述待测应用程序执行的第二用户操作,当监听到所述第二用户操作时,控制所述目标测试设备对所述待测应用程序执行与所述第二用户操作相同的操作,以实时对所述待测应用程序进行测试。4.根据权利要求3所述的方法,所述建立与目标测试设备之间的通信连接,包括:获取所述目标测试设备的设备信息;基于所述目标测试设备的设备信息,向所述目标测试设备发送通信连接请求,以建立与所述目标测试设备之间的通信连接。5.根据权利要求4所述的方法,所述获取所述目标测试设备的设备信息,包括:向所述服务器发送设备信息获取请求;接收所述服务器基于所述设备信息获取请求反馈的所述目标测试设备的设备信息。6.根据权利要求5所述的方法,所述向所述服务器发送设备信息获取请求,包括:获取并展示所述服务器下发的可用设备列表,所述可用设备列表包括多个当前处于空闲状态的第二终端设备的标识信息;基于所述用户对所述可用设备列表中的一个或多个第二终端设备的触发操作,从所述可用设备列表中确定所述目标测试设备;基于所述目标测试设备的标识信息,生成设备信息获取请求并将所述设备信息获取请求发送到所述服务器。7.根据权利要求3所述的方法,所述控制所述目标测试设备对所述待测应用程序执行与所述第二用户操作相同的操作之后,还包括:当检测到所述用户触发的第三预设指令时,向所述目标测试设备发送结束指令,以结束本次测试。8.根据权利要求3所述的方法,所述控制所述目标测试设备对所述待测应用程序执行与所述第二用户操作相同的操作,包括:针对监听到的每个第二用户操作,执行以下步骤:将所述第二用户操作转换为实时指令,并发送给所述目标测试设备,以使得所述目标测试设备执行所述实时指令;接收所述目标测试设备反馈的对所述实时指令的执行结果。9.一种应用程序测试方法,应用于第二终端设备,包括:向服务器发送注册请求,所述注册请求包括第二终端设备的设备信息,以使得所述服务器将所述设备信息存储在预先设置的设备信息库中;当接收到所述服务器基于所述注册请求反馈的注册成功确认信息时,建立所述第二终端设备与所述服务器之间的通信连接;当接收到所述服务器下发的对应于待测应用程序的测试脚本时,执行所述测试脚本。10.根据权利要求9所述的方法,还包括:当接收到第一终端设备发送的通信连接请求时,基于所述通信连接请求建立与所述第一终端设备之间的通信连接;控制所述第二终端设备对所述待测应用程序执行与所述第一终端设备监听到的第二用户操作相同的操作,以实时对所述待测应用程序进行测试。11.根据权利要求10所述的方法,所述控制所述第二终端设备对所述待测应用程序执行与所述第一终端设备监听到的第二用户操作相同的操作之后,还包括:当接收到所述第一终端设备发送的结束指令时,结束本次测试。12.根据权利要求10所述的方法,所述控制所述第二终端设备对所述待测应用程序执行与所述第一终端设备监听到的第二用户操作相同的操作,包括:当接收到所述第一终端设备发送的实时指令时,控制所述第二终端设备执行所述实时指令,并得到对所述实时指令的执行结果;将所述执行结果返回给所述第一终端设备。13.根据权利要求10所述的方法,所述控制所述第二终端设备对所述待测应用程序执行与所述第一终端设备监听到的第二用户操作相同的操作之后,还包括:生成测试结果,并将所述测试结果发送给所述服务器,以使得所述服务器将所述测试结果展示给所述用户。14.根据权利要求9所述的方法,所述建立所述第二终端设备与所述服务器之间的通信连接之后,还包括:监听所述第二终端设备的当前状态,所述当前状态为空闲状态或忙碌状态;将所述当前状态发送给所述服务器,以使得所述服务器根据所述当前状态更新预先设置的状态信息表,所述状态信息表存储有注册到所述服务器的第二终端设备对应的状态信息。15.根据权利要求9所述的方法,还包括:当检测到用户触发的第四预设指令时,将所述第二终端设备设置为主控机,并建立所述主控机与从机之间的通信连接,其中,所述从机包括一个或多个预先将设备信息注册到所述服务器且当前处于空闲状态的其他第二终端设备;监听用户对待测应用程序执行的第三用户操作,当监听到所述第三用户操作时,控制所述从机对所述待测应用程序执行与所述第三用户操作相同的操作,以实时对所述待测应用程序进行测试。16.根据权利要求15所述的方法,所述建立所述主控机与从机之间的通信连接,包括:向所述服务器发送设备信息获取请求,以使得所述服务器基于所述设备信息获取请求下发从机的设备信息;接收所述服务器下发的从机的设备信息,基于所述从机的设备信息,向所述从机发送通信连接请求,以建立与所述从机之间的通信连接。17.根据权利要求15所述的方法,所述控制所述从机对所述待测应用程序执行与所述第三用户操作相同的操作之后,还包括:当检测到所述用户触发的第五预设指令时,向所述从机发送结束指令,以结束本次测试。18.一种应用程序测试方法,应用于服务器,包括:当接收到第一终端设备发送的测试脚本时,基于所述测试脚本,确定一个或多个当前处于空闲状态的第二终端设备,其中,所述第二终端设备为预先通过向所述服务器发送注册请求与所述服务器之间建立通信连接的终端设备;将所述测试脚本发送给所述一个或多个当前处于空闲状态的第二终端设备,以使得所述第二终端设备执行所述测试脚本。19.根据权利要求18所述的方法,所述确定一个或多个当前处于空闲状态的第二终端设备之前,还包括:接收第二终端设备发送的注册请求,所述注册请求包括第二终端设备的设备信息;对所述注册请求进行验证,当验证通过时,将所述设备信息存储在预先设置的设备信息库中,并向所述第二终端设备反馈注册成功确认信息,以建立所述第二终端设备与所述服务器之间的通信连接。20.根据权利要求18所述的方法,还包括:接收第二终端设备反馈的当前状态,所述当前状态为空闲状态或忙碌状态;根据所述当前状态更新预先设置的状态信息表,所述状态信息表存储有注册到所述服务器的第二终端设备对应的状态信息。21.根据权利要求20所述的方法,还包括:基于所述状态信息表生成可用设备列表,所述可用设备列表包括多个当前处于空闲状态的第二终端设备。22.一种应用程序测试装置,应用于第一终端设备,包括:第一检测模块,用于检测用户是否触发第一预设指令;脚本生成模块,用于当检测到所述用户触发第一预设指令时,监听所述用户通过所述第一终端设备对待测应用程序执行的第一用户操作,并基于所述第一用户操作生成测试脚本;第一脚本发送模块,用于将所述测试脚本发送到服务器,以使得所述服务器将所述测试脚本发送...

【专利技术属性】
技术研发人员:刘梅郭小溪
申请(专利权)人:阿里巴巴集团控股有限公司
类型:发明
国别省市:开曼群岛,KY

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

1