CN113238944A - 一种测试方法、装置和系统 - Google Patents
一种测试方法、装置和系统 Download PDFInfo
- Publication number
- CN113238944A CN113238944A CN202110534161.9A CN202110534161A CN113238944A CN 113238944 A CN113238944 A CN 113238944A CN 202110534161 A CN202110534161 A CN 202110534161A CN 113238944 A CN113238944 A CN 113238944A
- Authority
- CN
- China
- Prior art keywords
- client
- test
- instruction
- server
- page operation
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000010998 test method Methods 0.000 title abstract description 13
- 238000012360 testing method Methods 0.000 claims abstract description 336
- 238000000034 method Methods 0.000 claims abstract description 40
- 238000012545 processing Methods 0.000 claims description 34
- 230000004044 response Effects 0.000 claims description 30
- 230000008569 process Effects 0.000 claims description 16
- 238000004590 computer program Methods 0.000 claims description 11
- 230000003213 activating effect Effects 0.000 claims description 3
- 238000010586 diagram Methods 0.000 description 11
- 230000006870 function Effects 0.000 description 9
- 238000004891 communication Methods 0.000 description 7
- 230000003287 optical effect Effects 0.000 description 4
- 230000004048 modification Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 239000000835 fiber Substances 0.000 description 2
- 230000000977 initiatory effect Effects 0.000 description 2
- 230000000644 propagated effect Effects 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 102100035115 Testin Human genes 0.000 description 1
- 101710070533 Testin Proteins 0.000 description 1
- 238000013142 basic testing Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 238000011056 performance test Methods 0.000 description 1
- 238000013112 stability test Methods 0.000 description 1
- 238000012430 stability testing Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3668—Software testing
- G06F11/3672—Test management
- G06F11/3684—Test management for test design, e.g. generating new test cases
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3668—Software testing
- G06F11/3672—Test management
- G06F11/3688—Test management for test execution, e.g. scheduling of test suites
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明公开了一种测试方法、装置和系统,涉及计算机技术领域。该方法的一具体实施方式包括:通过服务端确定第一客户端和一个或多个第二客户端的测试关联关系,并通过服务端转发在第一客户端上针对测试的(例如:互联网应用的测试)页面操作指令给一个或多个第二客户端,以使一个或多个第二客户端基于接收的页面操作指令完成对应的测试操作;实现了在多个客户端上同时执行测试操作,克服了现有的测试方法中只能在一台测试设备上执行测试的问题,提高了测试效率,节省了人力和时间成本。
Description
技术领域
本发明涉及计算机技术领域,尤其涉及一种测试方法、装置和系统。
背景技术
在开发互联网应用的过程中,需要对开发的互联网应用执行多种测试,例如兼容性测试、功能测试、性能测试、稳定性测试、网络场景测试等。
目前,测试互联网应用的方法是;在测试设备上运行待测试的互联网应用以完成对该应用的多种测试;或者利用云测试平台,通过远程控制云测试平台提供的测试设备,以完成互联网应用在侧测试设备上的多种测试操作;目前所采用的测试方法只能在一台测试设备上执行,存在测试效率较低,消耗时间成本较高的问题。
发明内容
有鉴于此,本发明实施例提供一种测试方法、装置和系统,能够通过服务端确定第一客户端和一个或多个第二客户端的测试关联关系,并通过服务端转发在第一客户端上针对测试的(例如:互联网应用的测试)页面操作指令给一个或多个第二客户端,以使一个或多个第二客户端基于接收的页面操作指令完成对应的测试操作;实现了在多个客户端上同时执行测试操作,克服了现有的测试方法中只能在一台测试设备上执行测试的问题,提高了测试效率,节省了人力和时间成本。
为实现上述目的,根据本发明实施例的一个方面,提供了一种测试方法,其特征在于,应用于服务端,包括:接收待测试的第一客户端发送的测试启动指令,将所述测试启动指令发送给待测试的一个或多个第二客户端;接收到一个或多个所述第二客户端中的至少一个目标客户端发送的对应于所述测试启动指令的响应指令;当接收到所述第一客户端发送的针对测试的页面操作指令时,将所述页面操作指令发送给至少一个所述目标客户端,以使所述目标客户端通过预先安装的测试工具执行所述页面操作指令,使所述目标客户端完成测试。
可选地,所述测试方法,其特征在于,进一步包括:注册多个客户端,并为已注册的客户端分配对应的客户端标识;确定至少一个所述目标客户端的客户端标识,并基于至少一个所述目标客户端的客户端标识,执行将所述页面操作指令发送给至少一个所述目标客户端的步骤。
可选地,所述测试方法,其特征在于,进一步包括:接收第三客户端发送的第一测试消息,所述第一测试消息指示第一客户端对应的客户端标识;响应于接收到任一客户端发送的第二测试消息,识别所述第二测试消息对应的客户端标识是否与所述第一客户端的客户端标识一致,如果是,则确定所述第二测试消息为所述第一客户端发送的针对测试的页面操作指令。
可选地,所述测试方法,其特征在于,进一步包括:获取所述第一客户端响应于所述页面操作指令的页面,以及至少一个所述目标客户端响应于所述页面操作指令的页面,汇总并发送各个所述页面给第四客户端,以使所述第四客户端展示各个页面。
为实现上述目的,根据本发明实施例的第二方面,提供了一种测试方法,其特征在于,应用于客户端,包括:发送测试启动指令给服务端,以使所述服务端发送所述测试启动指令并确定至少一个目标客户端,其中,所述目标客户端为发送所述测试启动指令之外的其他客户端;获取测试所述客户端的页面操作指令,发送所述页面操作指令给服务端,以使所述服务端发送所述页面操作指令给各个所述目标客户端。
为实现上述目的,根据本发明实施例的第三方面,提供了一种测试方法,其特征在于,应用于客户端,包括:接收服务端发送的测试启动指令,返回对应于所述测试启动指令的响应指令给所述服务端,以使所述服务端通过所述响应指令确定所述客户端是否为目标客户端;在确定为所述目标客户端的情况下,接收所述服务端发送的页面操作指令,并利用预先安装的测试工具执行所述页面操作指令。
为实现上述目的,根据本发明实施例的第四方面,提供了一种测试服务器,其特征在于,包括:处理启动指令模块、确定目标客户端模块和处理测试指令模块;其中,
所述处理启动指令模块,用于接收待测试的第一客户端发送的测试启动指令,将所述测试启动指令发送给待测试的一个或多个第二客户端;
所述确定目标客户端模块,用于接收到一个或多个所述第二客户端中的至少一个目标客户端发送的对应于所述测试启动指令的响应指令;
所述处理测试指令模块,用于当接收到的所述第一客户端发送的针对测试的页面操作指令时,将所述页面操作指令发送给至少一个所述目标客户端,以使所述目标客户端通过预先安装的测试工具执行所述页面操作指令,使所述目标客户端完成测试。
为实现上述目的,根据本发明实施例的第五方面,提供了一种测试客户端,其特征在于,包括:处理启动指令模块和处理测试指令模块;其中,
所述处理启动指令模块,用于发送测试启动指令给服务端,以使所述服务端发送所述测试启动指令并确定至少一个目标客户端,其中,所述目标客户端为发送所述测试启动指令之外的其他客户端;
所述处理测试指令模块,用于获取测试所述客户端的页面操作指令,发送所述页面操作指令给服务端,以使所述服务端发送所述页面操作指令给各个所述目标客户端。
为实现上述目的,根据本发明实施例的第六方面,提供了一种测试客户端,其特征在于,包括:处理启动指令模块和执行测试指令模块;其中,
所述处理启动指令模块,用于接收服务端发送的测试启动指令,返回对应于所述测试启动指令的响应指令给所述服务端,以使所述服务端通过所述响应指令确定所述客户端是否为目标客户端;
所述执行测试指令模块,用于在确定为所述目标客户端的情况下,接收所述服务端发送的页面操作指令,并利用预先安装的测试工具执行所述页面操作指令。
为实现上述目的,根据本发明实施例的第七方面,提供了一种测试系统,其特征在于,包括:测试服务器,第一客户端,一个或多个目标客户端,其中:
所述测试服务器,与待测试的所述第一客户端、以及一个或多个待测试的所述目标客户端连接,用于当接收到所述第一客户端发送的针对测试的页面操作指令时,将所述页面操作指令发送给至少一个目标客户端。
为实现上述目的,根据本发明实施例的第八方面,提供了一种测试电子设备,其特征在于,包括:一个或多个处理器;存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如上述测试方法中任一所述的方法。
为实现上述目的,根据本发明实施例的第九方面,提供了一种计算机可读介质,其上存储有计算机程序,其特征在于,所述程序被处理器执行时实现如上述测试方法中任一所述的方法。
上述发明中的一个实施例具有如下优点或有益效果:能够通过服务端确定第一客户端和一个或多个第二客户端的测试关联关系,并通过服务端转发在第一客户端上针对测试的(例如:互联网应用的测试)页面操作指令给一个或多个第二客户端,以使一个或多个第二客户端基于接收的页面操作指令完成对应的测试操作;实现了在多个客户端上同时执行测试操作,克服了现有的测试方法中只能在一台测试设备上执行测试的问题,提高了测试效率,节省了人力和时间成本。
上述的非惯用的可选方式所具有的进一步效果将在下文中结合具体实施方式加以说明。
附图说明
附图用于更好地理解本发明,不构成对本发明的不当限定。其中:
图1是本发明一个实施例提供的一种应用于服务端的测试方法的流程示意图;
图2是本发明一个实施例提供的一种应用于第一客户端的测试方法的流程示意图;
图3是本发明一个实施例提供的一种应用于目标客户端的测试方法的流程示意图;
图4是本发明一个实施例提供的一种测试服务器的结构示意图;
图5是本发明一个实施例提供的一种测试客户端的结构示意图;
图6是本发明一个实施例提供的另一种测试客户端的结构示意图;
图7是本发明一个实施例提供的一种测试系统的结构示意图;
图8是本发明一个实施例提供的一种测试方法的流程示意图;
图9是本发明实施例可以应用于其中的示例性系统架构图;
图10是适于用来实现本发明实施例的终端设备或服务器的计算机系统的结构示意图。
具体实施方式
以下结合附图对本发明的示范性实施例做出说明,其中包括本发明实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本发明的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
在开发应用过程中,测试为开发应用必要的步骤,测试的类型包括多种,例如兼容性测试、功能测试、性能测试、稳定性测试、网络场景测试等,测试的方法可以通过测试人员在在终端设备上执行多种类型的应用测试,同时,也可以通过云测试平台,通过访问远程的移动终端设备执行测试,其中,云测试平台例如Testin、腾讯优测、百度MTC、阿里MQC等;目前现有技术一次只能操作一个设备完成客户端测试,造成测试效率较低的问题。
鉴于此,如图1所示,本发明实施例提供了一种应用于服务端的测试方法,该方法可以包括以下步骤:
本申请的方案通过设置第一客户端,在第一客户端上执行基于测试场景的操作,包括输入页面操作指令,并将页面操作指令和测试步骤同步发送到各个关联的目标客户端,即可实现一次操作多个应用客户端测试,从而节省在各台设备对应的客户端上重复操作的时间成本,提升了测试效率,本申请的测试方法应用于多种测试场景,例如:应用在大数据背景下的千人千面推荐结果测试、应用的安装或卸载等基础测试、应用的回归测试等。
步骤S101:接收待测试的第一客户端发送的测试启动指令,将所述测试启动指令发送给待测试的一个或多个第二客户端。
具体地,第一客户端、一个或多个第二客户端为待测试的客户端,其中,第一客户端为发起测试启动指令的客户端,一个或多个第二客户端为接收测试启动指令的客户端。服务端在接收待测试的第一客户端发送的测试启动指令后,将所述测试启动指令发送给待测试的一个或多个第二客户端,其中,测试启动指令可以为device.join,发送该指令的第一客户端用该指令指示测试开始,服务端接收到device.join指令后,发送(例如:逐一发送、或者广播发送)给一个或多个第二客户端。其中,测试用例可以包含针对一个或多个运行于客户端的应用的多种类型的测试;也可以是针对客户端对应的终端设备的功能、性能等的测试。本发明对测试的具体种类和内容不做限定。
步骤S102:接收到一个或多个所述第二客户端中的至少一个目标客户端发送的对应于所述测试启动指令的响应指令。
具体地,服务端在发送测试启动指令给一个或多个第二客户端之后,接收第二客户端反馈于测试启动指令的响应指令,响应指令例如为device.joined,服务端将发送了响应指令的第二客户端确定为目标客户端,即,接收到一个或多个所述第二客户端中的至少一个目标客户端发送的对应于所述测试启动指令的响应指令。
可以理解的是,第一客户端、一个或多个第二客户端为待测试的客户端在测试之前,需要与服务端完成注册,并为每个注册成功的客户端分别客户端标识,也通过客户端标识区分第一客户端或接收第一客户端的页面操作指令的目标客户端。即,注册多个客户端,并为已注册的客户端分配对应的客户端标识;确定至少一个所述目标客户端的客户端标识,并基于至少一个所述目标客户端的客户端标识,执行将所述页面操作指令发送给至少一个所述目标客户端的步骤。
步骤S103:当接收到所述第一客户端发送的针对测试的页面操作指令时,将所述页面操作指令发送给至少一个所述目标客户端,以使所述目标客户端通过预先安装的测试工具执行所述页面操作指令,使所述目标客户端完成测试。
具体地,服务端接收到所述第一客户端发送的针对测试的页面操作指令,其中第一客户端为输入页面操作指令的客户端,页面操作指令包括针对一个或多个页面的输入的手势指令,例如:对页面包含的组件的点击、滑动、长按、拖拽从而现实页面跳转、输入等功能,可以理解的是,输入页面操作指令的方式可以是测试人员在第一客户端的页面上根据测试用例的步骤对页面进行操作,也可以通过编写页面操作指令的脚本,通过运行脚本自动完成基于页面操作指令的测试。本发明对页面操作指令的具体内容的具体数量,以及对应的具体页面不做限定。
进一步地,服务端接收第三客户端发送的第一测试消息,其中,第三客户端可以与第一客户端为同一客户端,也可以是不执行测试操作的网页客户端;第一测试消息用于指示第一客户端对应的客户端标识,即从多个客户端中指定第一客户端,并进一步根据第一客户端的客户端标识判断接收到的第二测试消息是否是从第一客户端发送的,如果是,确定第二测试消息为测试对应的页面操作指令;即,接收第三客户端发送的第一测试消息,所述第一测试消息指示第一客户端对应的客户端标识;响应于接收到任一客户端发送的第二测试消息,识别所述第二测试消息对应的客户端标识是否与所述第一客户端的客户端标识一致,如果是,则确定所述第二测试消息为所述第一客户端发送的针对测试的页面操作指令。
进一步地,服务端在接收到第一客户端发送的针对测试的页面操作指令时,将页面操作指令发送给至少一个目标客户端,其中,一个或多个目标客户端为与第一客户端同步完成测试的客户端;服务端将页面操作指令发送给至少一个目标客户端,以使所述目标客户端通过预先安装的测试工具执行所述页面操作指令,使所述目标客户端完成测试,其中预先安装的测试工具可以是minitouch。具体地,服务端可以通过proxy center模块,将页面操作指令,发送给所有成功应答过device.joined消息的各个目标客户端,由此可见,通过本方法可以实现同时在多个客户端上通过执行相同的页面操作指令,执行相同的测试用例,从而自动执行应用在大数据背景下的千人千面推荐搜索测试、应用的安装或卸载等基础测试、应用的回归测试;提高了测试效率,从而提高了开发效率。
进一步地,服务端获取第一客户端执行页面操作指令的页面,同时获取第一客户端执行页面操作指令的页面,将各个页面汇总给第四客户端以同时展示各个客户端的页面,其中,第四客户端可以为网页客户端,也可以是第一客户端、第三客户端或目标客户端中的任意一个,可以理解的是,通过同时展示多个页面,测试人员或开发人员可以对作为测试结果的页面加以分析和比较,以通过测试页面确定测试结果,例如:当测试应用的千人千面的测试用例时,可以查看各个客户端的页面所展示的内容是否为不同以对应于千人千面测试的预期结果。
获取所述第一客户端响应于所述页面操作指令的页面,以及至少一个所述目标客户端响应于所述页面操作指令的页面,汇总并发送各个所述页面给第四客户端,以使所述第四客户端展示各个页面。
如图2所示,本发明实施例提供了一种应用于客户端的测试方法,该方法可以包括以下步骤:
该测试方法应用于第一客户端;
步骤S201:发送测试启动指令给服务端,以使所述服务端发送所述测试启动指令并确定至少一个目标客户端,其中,所述目标客户端为发送所述测试启动指令之外的其他客户端。
具体地,第一客户端发送测试启动指令给服务端,以触发测试的启动操作,其中,第一客户端发送测试启动指令(device.join)给服务端的方法可以通过adb工具使用socket进行与服务端对于测试启动指令的数据传输,也可以使用通信协议传输,以使所述服务端发送所述测试启动指令并确定至少一个目标客户端,其中,所述目标客户端为发送所述测试启动指令之外的其他客户端,即为与第一客户端一起完成同时在多个客户端上执行测试的客户端(目标客户端)。
步骤S202:获取测试所述客户端的页面操作指令,发送所述页面操作指令给服务端,以使所述服务端发送所述页面操作指令给各个所述目标客户端。
具体地,所述客户端为第一客户端,第一客户端获取测试对应的页面操作指令,例如:在第一客户端执行的测试用例为:在应用A主页上的搜索框中输入预设文本,并点击搜索按钮以执行预设文本搜索并展示获得的搜索结果页面;其中,页面操作指令可以为:输入预设文本、点击搜索按钮等;示例性地,当通过脚本读取页面操作指令时,客户端可以通过安装于终端设备上的工具minitouch来触发页面操作指令对应的触控事件,例如:输入预设文本、点击搜索按钮等,已完成在第一客户端上执行的测试步骤,同时利用minicap工具来捕获屏幕与测试结果相关的一个或多个页面的屏幕,进一步地,例如第一客户端将页面操作指令通过adb工具使用socket将各个页面操作指令发送给服务端;以使服务端保存接收的各个页面操作指令,并转发各个页面操作指令给各个目标客户端,以使各个目标客户端执行本步骤的测试用例示例。
如图3所示,本发明实施例提供了一种应用于客户端的测试方法,该方法可以包括以下步骤;
该测试方法应用于对应于第一客户端的目标客户端;
步骤S301:接收服务端发送的测试启动指令,返回对应于所述测试启动指令的响应指令给所述服务端,以使所述服务端通过所述反馈消息确定所述客户端是否为目标客户端。
具体地,接收服务端发送的测试启动指令,其中,测试启动指令可以是通过第一客户端发送给服务端的,测试启动指令例如为device.join;目标客户端接收服务端发送(转发、广播、发送)的测试启动指令,返回对应于测试启动指令的响应指令(例如:device.joined),以使服务端通过响应指令确定所述客户端是否为目标客户端,例如:为测试用例abc设置5个参与测试的客户端,将客户端1设置为第一客户端,其他的设置为第二客户端,服务端将客户端1发送的device.join广播发送给其他4个客户端,并得到客户端2、客户端3、客户端4的响应指令device.joined(假设由于网络或者客户端设备原因,未接收到客户端5的响应指令),则将客户端2、客户端3、客户端4确定为目标客户端。其中,目标客户端在接收device.join后可以进行客户端绑定(例如:设备占用),并通过device.join激活客户端的service进程。
步骤S302:在确定为所述目标客户端的情况下,接收所述服务端发送的页面操作指令,并利用预先安装的测试工具执行所述页面操作指令。
具体地,所述客户端为目标客户端,即在确定为所述目标客户端的情况下,接收所述服务端发送的页面操作指令;例如:页面操作指令对应的测试用例为:在应用A主页上的搜索框中输入预设文本,并点击搜索按钮以执行预设文本搜索并展示获得的搜索结果页面;示例性地,客户端可以通过安装于终端设备上的工具minitouch来触发页面操作指令对应的触控事件,例如:输入文本、点击搜索按钮等,即,利用预先安装的测试工具(例如:minitouch)执行所述页面操作指令。
进一步地,在接收测试启动指令时,可以同时激活客户端的服务进程,以通过服务进程完成客户端与服务端进一步地数据(例如:页面操作指令)交互;即,根据所述接收的测试启动指令,激活所述客户端的服务进程,通过所述服务进程接收所述页面操作指令。
进一步地,在执行页面操作指令之后,可以将对应于页面操作指令的页面发送给服务端,其中,可以利用minicap工具来捕获屏幕与测试结果相关的页面的屏幕,或直接发送页面的页面数据给服务端,以使服务端显示各个目标客户端基于某一测试用例的测试结果页面,即,将执行所述页面操作指令所获得的页面发送给所述服务端。
即,根据所述接收的测试启动指令,激活所述客户端的服务进程,通过所述服务进程接收所述页面操作指令;和/或,将执行所述页面操作指令所获得的页面发送给所述服务端。
如图4所示,本发明实施例提供了一种测试服务器400,包括:处理启动指令模块401、确定目标客户端模块402和处理测试指令模块403;其中,
所述处理启动指令模块401,用于接收待测试的第一客户端发送的测试启动指令,将所述测试启动指令发送给待测试的一个或多个第二客户端;
所述确定目标客户端模块402,用于接收到一个或多个所述第二客户端中的至少一个目标客户端发送的对应于所述测试启动指令的响应指令;
所述处理测试指令模块403,用于当接收到的所述第一客户端发送的针对测试的页面操作指令时,将所述页面操作指令发送给至少一个所述目标客户端,以使所述目标客户端通过预先安装的测试工具执行所述页面操作指令,使所述目标客户端完成测试。
如图5所示,本发明实施例提供了一种测试客户端500,包括:处理启动指令模块501和处理测试指令模块502;其中,
所述处理启动指令模块501,用于发送测试启动指令给服务端,以使所述服务端发送所述测试启动指令并确定至少一个目标客户端,其中,所述目标客户端为发送所述测试启动指令之外的其他客户端;
所述处理测试指令模块502,用于获取测试所述客户端的页面操作指令,发送所述页面操作指令给服务端,以使所述服务端发送所述页面操作指令给各个所述目标客户端。
如图6所示,本发明实施例提供了一种测试客户端600,包括:处理启动指令模块601和执行测试指令模块602;其中,
所述处理启动指令模块601,用于接收服务端发送的测试启动指令,返回对应于所述测试启动指令的响应指令给所述服务端,以使所述服务端通过所述响应指令确定所述客户端是否为目标客户端;
所述执行测试指令模块602,用于在确定为所述目标客户端的情况下,接收所述服务端发送的页面操作指令,并利用预先安装的测试工具执行所述页面操作指令。
如图7所示,本发明实施例提供了一种测试系统700,包括:测试服务器400,第一客户端500,一个或多个目标客户端600;其中,
所述测试服务器400与所述第一客户端500、以及一个或多个所述目标客户端600连接,用于当接收到所述第一客户端500发送的针对测试的页面操作指令时,将所述页面操作指令发送给至少一个目标客户端600。
如图8所示,本发明实施例提供了一种测试方法的流程,该流程可以包括以下步骤;
步骤S801:第一客户端发送测试启动指令给服务端。
具体地,第一客户端为发起和运行某测试用例的客户端,第一客户端发送测试启动指令给服务端,以使所述服务端发送所述测试启动指令并确定至少一个目标客户端,其中,所述目标客户端为发送所述测试启动指令之外的其他客户端。
步骤S802:服务端发送测试启动指令给一个或多个目标客户端。
具体地,服务端接收待测试的第一客户端发送的测试启动指令,将所述测试启动指令发送给待测试的一个或多个第二客户端。
步骤S803:一个或多个目标客户端发送对应于测试启动指令的响应指令给服务端。
具体地,一个或多个第二客户端接收服务端发送的测试启动指令,返回对应于所述测试启动指令的响应指令给所述服务端,以使所述服务端通过所述响应指令确定所述客户端是否为目标客户端。
进一步地,服务端接收到一个或多个所述第二客户端中的至少一个目标客户端发送的对应于所述测试启动指令的响应指令。
步骤S804:第一客户端发送针对测试的页面操作指令给服务端。
具体地,第一客户端获取测试所述客户端的页面操作指令,发送所述页面操作指令给服务端,以使所述服务端发送所述页面操作指令给各个所述目标客户端。
步骤S805:服务端发送针对测试的页面操作指令给各个目标客户端。
具体地,服务端接收到所述第一客户端发送的针对测试的页面操作指令时,将所述页面操作指令发送给至少一个所述目标客户端,以使所述目标客户端通过预先安装的测试工具执行所述页面操作指令,使所述目标客户端完成测试。
步骤S806:各个目标客户端利用预先安装的测试工具执行页面操作指令,完成测试。
具体地,在确定为所述目标客户端的情况下,接收所述服务端发送的页面操作指令,并利用预先安装的测试工具执行所述页面操作指令。
本发明实施例还提供了一种测试电子设备,包括:一个或多个处理器;存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现上述任一实施例提供的方法。
本发明实施例还提供了一种计算机可读介质,其上存储有计算机程序,所述程序被处理器执行时实现上述任一实施例提供的方法。
图9示出了可以应用本发明实施例的测试方法或测试装置的示例性系统架构900。
如图9所示,系统架构900可以包括终端设备901、902、903,网络904和服务器905。网络904用以在终端设备901、902、903和服务器905之间提供通信链路的介质。网络904可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
用户可以使用终端设备901、902、903通过网络904与服务器905交互,以接收或发送消息等。终端设备901、902、903上可以安装有各种客户端应用,例如电子商城客户端应用、网页浏览器应用、搜索类应用、即时通信工具和邮箱客户端等。
终端设备901、902、903可以是具有显示屏并且支持各种客户端应用的各种电子设备,包括但不限于智能手机、平板电脑、膝上型便携计算机和台式计算机等等。
服务器905可以是提供各种服务的服务器,例如对用户利用终端设备901、902、903所使用的客户端应用提供支持的后台管理服务器。后台管理服务器可以对从第一客户端接收到的测试指令进行处理,并发送测试指令给多个第二客户端。
需要说明的是,本发明实施例所提供的测试方法一般由终端设备服务器905执行,相应地,测试客户端一般设置于终端设备901、902、903中;测试服务器一般设置于服务器905中。
应该理解,图9中的终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。
下面参考图10,其示出了适于用来实现本发明实施例的终端设备的计算机系统1000的结构示意图。图10示出的终端设备仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
如图10所示,计算机系统1000包括中央处理单元(CPU)1001,其可以根据存储在只读存储器(ROM)1002中的程序或者从存储部分1008加载到随机访问存储器(RAM)1003中的程序而执行各种适当的动作和处理。在RAM 1003中,还存储有系统1000操作所需的各种程序和数据。CPU 1001、ROM 1002以及RAM 1003通过总线1004彼此相连。输入/输出(I/O)接口1005也连接至总线1004。
以下部件连接至I/O接口1005:包括键盘、鼠标等的输入部分1006;包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出部分1007;包括硬盘等的存储部分1008;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分1009。通信部分1009经由诸如因特网的网络执行通信处理。驱动器1010也根据需要连接至I/O接口1005。可拆卸介质1011,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器1010上,以便于从其上读出的计算机程序根据需要被安装入存储部分1008。
特别地,根据本发明公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本发明公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分1009从网络上被下载和安装,和/或从可拆卸介质1011被安装。在该计算机程序被中央处理单元(CPU)1001执行时,执行本发明的系统中限定的上述功能。
需要说明的是,本发明所示的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本发明中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本发明中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、电线、光缆、RF等等,或者上述的任意合适的组合。
附图中的流程图和框图,图示了按照本发明各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本发明实施例中所涉及到的模块和/或单元可以通过软件的方式实现,也可以通过硬件的方式来实现。所描述的模块和/或单元也可以设置在处理器中,例如,可以描述为:一种处理器包括处理启动指令模块、确定目标客户端模块和处理测试指令模块。其中,这些模块的名称在某种情况下并不构成对该模块本身的限定,例如,处理启动指令模块还可以被描述为“接收待测试的第一客户端发送的测试启动指令,将所述测试启动指令发送给待测试的一个或多个第二客户端”。
作为另一方面,本发明还提供了一种计算机可读介质,该计算机可读介质可以是上述实施例中描述的设备中所包含的;也可以是单独存在,而未装配入该设备中。上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被一个该设备执行时,使得该设备包括服务端:接收待测试的第一客户端发送的测试启动指令,将所述测试启动指令发送给待测试的一个或多个第二客户端;接收到一个或多个所述第二客户端中的至少一个目标客户端发送的对应于所述测试启动指令的响应指令;当接收到所述第一客户端发送的针对测试的页面操作指令时,将所述页面操作指令发送给至少一个所述目标客户端,以使所述目标客户端通过预先安装的测试工具执行所述页面操作指令,使所述目标客户端完成测试。
第一客户端:发送测试启动指令给服务端,以使所述服务端发送所述测试启动指令并确定至少一个目标客户端,其中,所述目标客户端为发送所述测试启动指令之外的其他客户端;获取测试所述客户端的页面操作指令,发送所述页面操作指令给服务端,以使所述服务端发送所述页面操作指令给各个所述目标客户端。
第二客户端:接收服务端发送的测试启动指令,返回对应于所述测试启动指令的响应指令给所述服务端,以使所述服务端通过所述响应指令确定所述客户端是否为目标客户端;在确定为所述目标客户端的情况下,接收所述服务端发送的页面操作指令,并利用预先安装的测试工具执行所述页面操作指令。
通过服务端确定第一客户端和一个或多个第二客户端的测试关联关系,并通过服务端转发在第一客户端上针对测试的(例如:互联网应用的测试)页面操作指令给一个或多个第二客户端,以使一个或多个第二客户端基于接收的页面操作指令完成对应的测试操作;实现了在多个客户端上同时执行测试操作,克服了现有的测试方法中只能在一台测试设备上执行测试的问题,提高了测试效率,节省了人力和时间成本。
上述具体实施方式,并不构成对本发明保护范围的限制。本领域技术人员应该明白的是,取决于设计要求和其他因素,可以发生各种各样的修改、组合、子组合和替代。任何在本发明的精神和原则之内所作的修改、等同替换和改进等,均应包含在本发明保护范围之内。
Claims (13)
1.一种测试方法,其特征在于,应用于服务端,包括:
接收待测试的第一客户端发送的测试启动指令,将所述测试启动指令发送给待测试的一个或多个第二客户端;
接收到一个或多个所述第二客户端中的至少一个目标客户端发送的对应于所述测试启动指令的响应指令;
当接收到所述第一客户端发送的针对测试的页面操作指令时,将所述页面操作指令发送给至少一个所述目标客户端,以使所述目标客户端通过预先安装的测试工具执行所述页面操作指令,使所述目标客户端完成测试。
2.根据权利要求1所述的方法,其特征在于,
进一步包括:注册多个客户端,并为已注册的客户端分配对应的客户端标识;
确定至少一个所述目标客户端的客户端标识,并基于至少一个所述目标客户端的客户端标识,执行将所述页面操作指令发送给至少一个所述目标客户端的步骤。
3.根据权利要求2所述的方法,其特征在于,进一步包括:
接收第三客户端发送的第一测试消息,所述第一测试消息指示第一客户端对应的客户端标识;
响应于接收到任一客户端发送的第二测试消息,识别所述第二测试消息对应的客户端标识是否与所述第一客户端的客户端标识一致,如果是,则确定所述第二测试消息为所述第一客户端发送的针对测试的页面操作指令。
4.根据权利要求1所述的方法,其特征在于,进一步包括:
获取所述第一客户端响应于所述页面操作指令的页面,以及至少一个所述目标客户端响应于所述页面操作指令的页面,汇总并发送各个所述页面给第四客户端,以使所述第四客户端展示各个页面。
5.一种测试方法,其特征在于,应用于客户端,包括:
发送测试启动指令给服务端,以使所述服务端发送所述测试启动指令并确定至少一个目标客户端,其中,所述目标客户端为发送所述测试启动指令之外的其他客户端;
获取测试所述客户端的页面操作指令,发送所述页面操作指令给服务端,以使所述服务端发送所述页面操作指令给各个所述目标客户端。
6.一种测试方法,其特征在于,应用于客户端,包括:
接收服务端发送的测试启动指令,返回对应于所述测试启动指令的响应指令给所述服务端,以使所述服务端通过所述响应指令确定所述客户端是否为目标客户端;
在确定为所述目标客户端的情况下,接收所述服务端发送的页面操作指令,并利用预先安装的测试工具执行所述页面操作指令。
7.根据权利要求6所述的方法,其特征在于,
进一步包括:根据所述接收的测试启动指令,激活所述客户端的服务进程,通过所述服务进程接收所述页面操作指令;
和/或,
进一步包括:将执行所述页面操作指令所获得的页面发送给所述服务端。
8.一种测试服务器,包括:处理启动指令模块、确定目标客户端模块和处理测试指令模块;其中,
所述处理启动指令模块,用于接收待测试的第一客户端发送的测试启动指令,将所述测试启动指令发送给待测试的一个或多个第二客户端;
所述确定目标客户端模块,用于接收到一个或多个所述第二客户端中的至少一个目标客户端发送的对应于所述测试启动指令的响应指令;
所述处理测试指令模块,用于当接收到的所述第一客户端发送的针对测试的页面操作指令时,将所述页面操作指令发送给至少一个所述目标客户端,以使所述目标客户端通过预先安装的测试工具执行所述页面操作指令,使所述目标客户端完成测试。
9.一种测试客户端,包括:处理启动指令模块和处理测试指令模块;其中,
所述处理启动指令模块,用于发送测试启动指令给服务端,以使所述服务端发送所述测试启动指令并确定至少一个目标客户端,其中,所述目标客户端为发送所述测试启动指令之外的其他客户端;
所述处理测试指令模块,用于获取测试所述客户端的页面操作指令,发送所述页面操作指令给服务端,以使所述服务端发送所述页面操作指令给各个所述目标客户端。
10.一种测试客户端,包括:处理启动指令模块和执行测试指令模块;其中,
所述处理启动指令模块,用于接收服务端发送的测试启动指令,返回对应于所述测试启动指令的响应指令给所述服务端,以使所述服务端通过所述响应指令确定所述客户端是否为目标客户端;
所述执行测试指令模块,用于在确定为所述目标客户端的情况下,接收所述服务端发送的页面操作指令,并利用预先安装的测试工具执行所述页面操作指令。
11.一种测试系统,其特征在于,包括:测试服务器,第一客户端,一个或多个目标客户端,其中:
所述测试服务器,与待测试的所述第一客户端、以及一个或多个待测试的所述目标客户端连接,用于当接收到所述第一客户端发送的针对测试的页面操作指令时,将所述页面操作指令发送给至少一个目标客户端。
12.一种电子设备,其特征在于,包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-7中任一所述的方法。
13.一种计算机可读介质,其上存储有计算机程序,其特征在于,所述程序被处理器执行时实现如权利要求1-7中任一所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110534161.9A CN113238944A (zh) | 2021-05-17 | 2021-05-17 | 一种测试方法、装置和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110534161.9A CN113238944A (zh) | 2021-05-17 | 2021-05-17 | 一种测试方法、装置和系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113238944A true CN113238944A (zh) | 2021-08-10 |
Family
ID=77134685
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110534161.9A Pending CN113238944A (zh) | 2021-05-17 | 2021-05-17 | 一种测试方法、装置和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113238944A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113794602A (zh) * | 2021-08-20 | 2021-12-14 | 海南视联大健康智慧医疗科技有限公司 | 一种设备测试方法、装置、终端设备和存储介质 |
CN114726577A (zh) * | 2022-03-02 | 2022-07-08 | 武汉天喻信息产业股份有限公司 | 一种供于测试的通信系统及数据篡改方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103810084A (zh) * | 2012-11-07 | 2014-05-21 | 腾讯科技(深圳)有限公司 | 一种js代码的测试方法、装置和系统 |
CN105183630A (zh) * | 2014-06-05 | 2015-12-23 | 腾讯科技(深圳)有限公司 | 应用程序测试方法及装置 |
CN105573905A (zh) * | 2014-10-11 | 2016-05-11 | 航天信息股份有限公司 | 软件兼容性测试方法和系统 |
CN109684218A (zh) * | 2018-12-26 | 2019-04-26 | 世纪龙信息网络有限责任公司 | 基于云真机的测试系统及测试方法 |
-
2021
- 2021-05-17 CN CN202110534161.9A patent/CN113238944A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103810084A (zh) * | 2012-11-07 | 2014-05-21 | 腾讯科技(深圳)有限公司 | 一种js代码的测试方法、装置和系统 |
CN105183630A (zh) * | 2014-06-05 | 2015-12-23 | 腾讯科技(深圳)有限公司 | 应用程序测试方法及装置 |
CN105573905A (zh) * | 2014-10-11 | 2016-05-11 | 航天信息股份有限公司 | 软件兼容性测试方法和系统 |
CN109684218A (zh) * | 2018-12-26 | 2019-04-26 | 世纪龙信息网络有限责任公司 | 基于云真机的测试系统及测试方法 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113794602A (zh) * | 2021-08-20 | 2021-12-14 | 海南视联大健康智慧医疗科技有限公司 | 一种设备测试方法、装置、终端设备和存储介质 |
CN114726577A (zh) * | 2022-03-02 | 2022-07-08 | 武汉天喻信息产业股份有限公司 | 一种供于测试的通信系统及数据篡改方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9021507B2 (en) | Dynamic use of data across multiple programs | |
CN110708346A (zh) | 信息处理系统和方法 | |
CN109684188B (zh) | 测试方法和装置 | |
CN109218041B (zh) | 用于服务器系统的请求处理方法和装置 | |
CN113238944A (zh) | 一种测试方法、装置和系统 | |
WO2019029451A1 (zh) | 发布移动应用的方法和电子设备 | |
CN112015654A (zh) | 用于测试的方法和装置 | |
CN111694757A (zh) | 应用程序的测试方法、装置、电子设备及计算机可读存储介质 | |
CN112306851A (zh) | 一种自动化测试方法和装置 | |
CN110619100A (zh) | 用于获取数据的方法和装置 | |
CN114116495A (zh) | 测试方法及装置、电子设备和存储介质 | |
JP2023504956A (ja) | 性能検出方法、装置、電子機器及びコンピュータ可読媒体 | |
CN109144843B (zh) | 测试环境部署的方法和装置 | |
CN110618768B (zh) | 信息呈现方法和装置 | |
CN113282444A (zh) | 用于业务流程调试的可视化方法和装置 | |
CN115996179A (zh) | 业务节点的测试方法、装置、可读介质和电子设备 | |
CN110489326B (zh) | 基于ids的httpapi调试方法装置、介质和设备 | |
CN109144864B (zh) | 用于测试窗口的方法及装置 | |
CN107247661B (zh) | 支持对应用的安装包进行自动化验证的方法和系统 | |
CN111488268A (zh) | 自动化测试的调度方法和调度装置 | |
CN113704079B (zh) | 基于Protobuf的接口测试方法和装置 | |
CN114745313A (zh) | 终端远程测试方法、装置、电子设备和可读介质 | |
CN113407229B (zh) | 用于生成离线脚本的方法及装置 | |
CN112306858A (zh) | 测试方法、装置和电子设备 | |
CN113448827A (zh) | 一种测试数据的处理方法和装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |