CN113672511B - 一种用于自动化测试的远程协助方法 - Google Patents
一种用于自动化测试的远程协助方法 Download PDFInfo
- Publication number
- CN113672511B CN113672511B CN202110957886.9A CN202110957886A CN113672511B CN 113672511 B CN113672511 B CN 113672511B CN 202110957886 A CN202110957886 A CN 202110957886A CN 113672511 B CN113672511 B CN 113672511B
- Authority
- CN
- China
- Prior art keywords
- customer service
- error
- service end
- information
- robot
- 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.)
- Active
Links
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
Abstract
本发明公开了一种用于自动化测试的远程协助方法,其具体过程为:首先机器人端、客服端均通过三次握手的方式与服务端建立TCP连接,并且机器人端采用视觉反馈机制识别正在运行的自动测试程序是否出错,若出错,则将错误报告通过消息机制发送给服务端,服务端通过比较客服端的空闲指数Ui的大小,将Ui值最大的客服端指定为当前客服端,由当前客服端远程处理机器人端出现的错误问题,解决成功则任务结束,未解决成功则由服务端重新按照相应规则指定新的客服端作为当前客服端。本发明能够解决现有无人值守的自动化测试系统容易出现故障导致测试程序中止,从而降低了自动化测试系统的工作效率、延长了测试时间的技术问题。
Description
技术领域
本发明属于自动化测试领域,更具体地,涉及一种用于自动化测试的远程协助方法。
背景技术
软件测试是软件生命周期中一项非常重要且复杂的工作,它的目的是尽可能发现并改正被测试软件中的错误,提高软件的可靠性。目前,国内外已经涌现出许多能够在无人值守的情况下工作的自动化测试框架和工具,其为保障软件工程质量、提升测试工作效率、降低软件工程成本提供了长效卓著的支持。
然而,现有无人值守的自动化测试系统仍然存在一些不可忽略的缺陷:第一、由于自动化测试系统本身的错误、自动化测试脚本的错误以及非系统性错误等原因,常常会导致测试程序中止,从而降低了自动化测试系统的工作效率,延长了测试时间;第二、该自动化测试系统在出现上述故障时,由于缺乏远程协助机制,导致无法及时排除故障,并进一步降低了自动化测试系统的工作效能。
发明内容
针对现有技术的以上缺陷或改进需求,本发明提供了一种用于自动化测试的远程协助方法,其目的在于,解决现有无人值守的自动化测试系统容易出现故障导致测试程序中止,从而降低了自动化测试系统的工作效率、延长了测试时间的技术问题,以及在出现上述故障时,由于缺乏远程协助机制,导致无法及时排除故障、进一步降低了自动化测试系统的工作效能的技术问题。
为实现上述目的,按照本发明的一个方面,提供了一种用于自动化测试的远程协助方法,其是应用在包括多个机器人端、服务端、以及多个客服端的远程协助系统中,所述远程协助方法包括以下步骤:
(1)机器人端在自动化测试程序出现故障导致自动化测试系统停止运行时将错误报告发送给服务端;
(2)服务端在接收到来自所述机器人端的错误报告后,并将所述机器人端的身份信息和错误报告发送到当前客服端,该当前客服端的空闲指数在整个远程协助系统的所有客服端中最大;
(3)当前客服端在接收到来自服务端的所述机器人端的身份信息和错误报告后,将该身份信息、以及错误报告中的错误信息通过当前客服端自身的界面显示给客服人员;
(4)客服端判断是否接收到来自于客服人员的确认信息,如果接收到,表示客服人员能够解决该错误信息,然后转入步骤(5),如果没接收到,则表示客服人员无法解决该错误信息,然后转入步骤(6);
(5)当前客服端通过VNC软件与机器人端实现通讯,然后转入步骤(7);
(6)服务端将机器人端的身份信息和错误报告继续发送给整个远程协助系统中其空闲指数比当前客服端小、但比其余客服端大的一个客服端,并使用该客服端作为当前客服端,然后返回步骤(3);
(7)当前客服端判断从客服人员接收到错误成功解决信息还是错误未能成功解决信息,如果是前者则转入步骤(8),如果是后者转入步骤(10);
(8)当前客服端将错误成功解决信息发送至服务端,并转入步骤(9);
(9)服务端将来自当前客服端的错误成功解决信息转发到机器人端,用于机器人端继续执行自动化测试流程,过程结束;
(10)当前客服端将错误未能成功解决信息转发至服务端,并返回步骤(6)。
优选地,所有机器人端均为无人值守的自动化测试机器人,服务端是部署在云端;
远程协助系统中的机器人端和所有客服端均提前部署有VNC软件。
客服端包括三种状态:空闲状态、等待状态和工作状态。
优选地,步骤(1)中,机器人端是通过视觉反馈机制判断自动化测试程序是否出现故障,且该过程具体包括以下子步骤:
(1-1)机器人端通过与浏览器插件通信实现运行自动化测试程序的后台的网页截屏;
(1-2)机器人端通过光学文字识别OCR提取截屏的网页中的文本内容;
(1-3)机器人端通过自然语言处理NLP对提取的网页中的文本内容进行语义分析,以判断测试过程是否出错;
优选地,远程协助系统中第i个客服端的空闲指数Ui的具体计算公式为:
Ui=Yi-Ti/Pi
其中i为客服端的序号,且有i∈[1,远程协助系统中客服端的总数n],Yi表示第i个客服端在过去m个工作日中处于等待状态的总时间,Pi表示预设的第i个客服端对应的等级系数,且有Pi∈{1,2,...n},Ti表示第i个客服端在过去m工作日中处于工作状态的总时间。
优选地,当客服端在接收到来自服务端的机器人端的身份信息和错误报告时,客服端由空闲状态转入等待状态;
当客服端接收到来自于客服人员的确认信息时,客服端由等待状态转入工作状态;
当客服端发送错误成功解决信息或错误未能成功解决信息至服务端时,客服端由工作状态转入空闲状态;
客服端在等待状态和工作状态时的Ui值被预设为负无穷。
优选地,所述方法进一步包括在上述步骤(1)之后、步骤(2)之前,客服端通过三次握手的方式与服务端建立TCP连接。
优选地,在步骤(8)和步骤(10)中,客服端发送错误成功解决信息或错误未能成功解决信息至服务端后,依旧保持与服务端的TCP连接;
在当前客服端转入空闲状态时,需要重新计算其空闲指数Ui。
优选地,若自动化测试程序没有出现故障,机器人端需要定时向服务端发送消息,表明自动化测试程序正常运行。
总体而言,通过本发明所构思的以上技术方案与现有技术相比,能够取得下列有益效果:
(1)本发明由于采用了步骤(1),其基于视觉反馈机制,能够解决现有自动化测试系统出现故障时,导致测试程序中止,从而降低了自动化测试系统的工作效率、并延长了测试时间的技术问题;
(2)本发明由于采用了步骤(1)至步骤(10),其采用了(Virtual NetworkConsole,简称VNC)软件的三方交互远程协助系统,能够解决现有自动化测试系统在出现故障时,由于缺乏远程协助机制,导致无法及时排除故障,并进一步降低了自动化测试系统的工作效能的技术问题。
附图说明
图1是本发明用于自动化测试的远程协助方法的应用环境示意图;
图2是本发明用于自动化测试的远程协助方法的流程图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。此外,下面所描述的本发明各个实施方式中所涉及到的技术特征只要彼此之间未构成冲突就可以相互组合。
本发明的基本思路在于,提供一种用于自动化测试的远程协助方法,其具体过程为:首先机器人端、客服端均通过三次握手的方式与服务端建立TCP连接,并且机器人端采用视觉反馈机制识别正在运行的自动测试程序是否出错,若出错,则将错误报告通过消息机制发送给服务端,服务端通过比较客服端的空闲指数Ui的大小,将Ui值最大的客服端指定为当前客服端,由当前客服端远程处理机器人端出现的错误问题,解决成功则任务结束,未解决成功则由服务端重新按照相应规则指定新的客服端作为当前客服端。
如图2所示,本发明提供了一种用于自动化测试的远程协助方法,其是应用在包括多个机器人端、服务端、以及多个客服端的远程协助系统(如图1所示)中,所述远程协助方法包括以下步骤:
(1)机器人端在自动化测试程序出现故障导致自动化测试系统停止运行时将错误报告发送给服务端;
具体而言,本发明中的所有机器人端均为无人值守的自动化测试机器人,服务端是部署在云端。
具体而言,在步骤(1)之前,远程协助系统中的机器人端和所有客服端均提前部署有VNC;
具体而言,机器人端是通过视觉反馈机制判断测试过程是否出错,并包括以下子步骤:
(1-1)机器人端通过与浏览器插件通信实现运行自动化测试程序的后台的网页截屏;
(1-2)机器人端通过光学文字识别(Optical character recognition,简称OCR)提取截屏的网页中的文本内容;
(1-3)机器人端通过自然语言处理(natural language processing,简称NLP)对提取的网页中的文本内容进行语义分析,以判断测试过程是否出错;
(2)服务端在接收到来自所述机器人端的错误报告后,并将所述机器人端的身份信息和错误报告发送到当前客服端,该当前客服端的空闲指数在整个远程协助系统的所有客服端中最大(且非负无穷);
具体而言,远程协助系统中第i个客服端的空闲指数Ui的具体计算公式为:
Ui=Yi-Ti/Pi
其中i为客服端的序号,且有i∈[1,远程协助系统中客服端的总数n],Yi表示第i个客服端在过去m个工作日(其中m为1到5之间的自然数,优选值为5)中的总等待时间(即处于等待状态的总时间),Pi表示预设的第i个客服端对应的等级系数(其是根据该客服端对应客服人员的业务能力设定,该取值越大,则说明对应客服人员的业务能力越强,反之则说明越弱),且有Pi∈{1,2,...n},Ti表示第i个客服端在过去m工作日中的总工作时间(即处于工作状态的总时间),Yi和Ti的单位均为小时。
本步骤的优点在于,客服端的空闲指数Ui并不是固定不变的,它根据三项指标Yi、Ti、Pi的动态变化而不断更新,为服务端选择客服端这一过程设定了一种相对公平、合理的规则;
(3)当前客服端在接收到来自服务端的所述机器人端的身份信息和错误报告后,将该身份信息、以及错误报告中的错误信息通过当前客服端自身的界面显示给客服人员;
(4)客服端判断是否接收到来自于客服人员的确认信息,如果接收到,表示客服人员能够解决该错误信息,然后转入步骤(5),如果没接收到,则表示客服人员无法解决该错误信息,然后转入步骤(6);
具体而言,本发明的方法进一步包括在上述步骤(1)之后、步骤(2)之前,客服端通过三次握手的方式与服务端建立TCP连接。
(5)当前客服端通过VNC软件与机器人端实现通讯,然后转入步骤(7);
(6)服务端将机器人端的身份信息和错误报告继续发送给整个远程协助系统中其空闲指数比当前客服端小、但比其余客服端大的一个客服端,并使用该客服端作为当前客服端,然后返回步骤(3);
(7)当前客服端判断从客服人员接收到错误成功解决信息还是错误未能成功解决信息,如果是前者则转入步骤(8),如果是后者转入步骤(10);
(8)当前客服端将错误成功解决信息发送至服务端,并转入步骤(9);
(9)服务端将来自当前客服端的错误成功解决信息转发到机器人端,用于机器人端继续执行自动化测试流程,过程结束;
(10)当前客服端将错误未能成功解决信息转发至服务端,并返回步骤(6);
优选地,所述机器人端在测试工作开始之前应与服务端建立TCP连接,遇到异常情况,机器人端与服务端进行通信,异常问题处理完成后,机器人端与服务端依旧保持TCP连接;
优选地,客服端包括三种状态:空闲状态、等待状态和工作状态;当客服端在接收到来自服务端的机器人端的身份信息和错误报告时,客服端由空闲状态转入等待状态;当客服端接收到来自于客服人员的确认信息时,客服端由等待状态转入工作状态;当客服端发送错误成功解决信息或错误未能成功解决信息至服务端时,客服端由工作状态转入空闲状态;客服端在等待状态和工作状态时的Ui值被预设为负无穷;一般地,客服端处于等待状态的时间很短;
优选地,在步骤(8)和步骤(10)中,客服端发送错误成功解决信息或错误未能成功解决信息至服务端后,依旧保持与服务端的TCP连接,并且当前客服端转入空闲状态时,需要重新计算其空闲指数Ui;
优选地,若自动化测试程序没有出现故障,机器人端需要定时向服务端发送消息,表明自动化测试程序正常运行。
本领域的技术人员容易理解,以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
Claims (7)
1.一种用于自动化测试的远程协助方法,其是应用在包括多个机器人端、服务端、以及多个客服端的远程协助系统中,其特征在于,所述远程协助方法包括以下步骤:
(1)机器人端在自动化测试程序出现故障导致自动化测试系统停止运行时将错误报告发送给服务端;
(2)服务端在接收到来自所述机器人端的错误报告后,并将所述机器人端的身份信息和错误报告发送到当前客服端,该当前客服端的空闲指数在整个远程协助系统的所有客服端中最大;远程协助系统中第i个客服端的空闲指数Ui的具体计算公式为:
;
其中i为客服端的序号,且有i∈[1,远程协助系统中客服端的总数n],Yi表示第i个客服端在过去m个工作日中处于等待状态的总时间,Pi表示预设的第i个客服端对应的等级系数,且有Pi∈{1,2,...n},Ti表示第i个客服端在过去m工作日中处于工作状态的总时间;
(3)当前客服端在接收到来自服务端的所述机器人端的身份信息和错误报告后,将该身份信息、以及错误报告中的错误信息通过当前客服端自身的界面显示给客服人员;
(4)客服端判断是否接收到来自于客服人员的确认信息,如果接收到,表示客服人员能够解决该错误信息,然后转入步骤(5),如果没接收到,则表示客服人员无法解决该错误信息,然后转入步骤(6);
(5)当前客服端通过VNC软件与机器人端实现通讯,然后转入步骤(7);
(6)服务端将机器人端的身份信息和错误报告继续发送给整个远程协助系统中其空闲指数比当前客服端小、但比其余客服端大的一个客服端,并使用该客服端作为当前客服端,然后返回步骤(3);
(7)当前客服端判断从客服人员接收到错误成功解决信息还是错误未能成功解决信息,如果是前者则转入步骤(8),如果是后者转入步骤(10);
(8)当前客服端将错误成功解决信息发送至服务端,并转入步骤(9);
(9)服务端将来自当前客服端的错误成功解决信息转发到机器人端,用于机器人端继续执行自动化测试流程,过程结束;
(10)当前客服端将错误未能成功解决信息转发至服务端,并返回步骤(6)。
2.根据权利要求1所述的用于自动化测试的远程协助方法,其特征在于,
所有机器人端均为无人值守的自动化测试机器人,服务端是部署在云端;
远程协助系统中的机器人端和所有客服端均提前部署有VNC软件;
客服端包括三种状态:空闲状态、等待状态和工作状态。
3.根据权利要求1或2所述的用于自动化测试的远程协助方法,其特征在于,步骤(1)中,机器人端是通过视觉反馈机制判断自动化测试程序是否出现故障,且该步骤具体包括以下子步骤:
(1-1)机器人端通过与浏览器插件通信实现运行自动化测试程序的后台的网页截屏;
(1-2)机器人端通过光学文字识别OCR提取截屏的网页中的文本内容;
(1-3)机器人端通过自然语言处理NLP对提取的网页中的文本内容进行语义分析,以判断测试过程是否出错。
4.根据权利要求3所述的用于自动化测试的远程协助方法,其特征在于,
当客服端在接收到来自服务端的机器人端的身份信息和错误报告时,客服端由空闲状态转入等待状态;
当客服端接收到来自于客服人员的确认信息时,客服端由等待状态转入工作状态;
当客服端发送错误成功解决信息或错误未能成功解决信息至服务端时,客服端由工作状态转入空闲状态;
客服端在等待状态和工作状态时的Ui值被预设为负无穷。
5.根据权利要求1所述的用于自动化测试的远程协助方法,其特征在于,所述方法进一步包括在上述步骤(1)之后、步骤(2)之前,客服端通过三次握手的方式与服务端建立TCP连接。
6.根据权利要求1所述的用于自动化测试的远程协助方法,其特征在于,
在步骤(8)和步骤(10)中,客服端发送错误成功解决信息或错误未能成功解决信息至服务端后,依旧保持与服务端的TCP连接;
在当前客服端转入空闲状态时,需要重新计算其空闲指数Ui。
7.根据权利要求1所述的用于自动化测试的远程协助方法,其特征在于,若自动化测试程序没有出现故障,机器人端需要定时向服务端发送消息,表明自动化测试程序正常运行。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110957886.9A CN113672511B (zh) | 2021-08-20 | 2021-08-20 | 一种用于自动化测试的远程协助方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110957886.9A CN113672511B (zh) | 2021-08-20 | 2021-08-20 | 一种用于自动化测试的远程协助方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113672511A CN113672511A (zh) | 2021-11-19 |
CN113672511B true CN113672511B (zh) | 2023-10-10 |
Family
ID=78544391
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110957886.9A Active CN113672511B (zh) | 2021-08-20 | 2021-08-20 | 一种用于自动化测试的远程协助方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113672511B (zh) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20000014249A (ko) * | 1998-08-19 | 2000-03-06 | 윤종용 | 원격지 컴퓨터의 장애 복구 방법 |
US10216621B1 (en) * | 2017-11-16 | 2019-02-26 | Servicenow, Inc. | Automated diagnostic testing of databases and configurations for performance analytics visualization software |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9047413B2 (en) * | 2012-10-05 | 2015-06-02 | Software Ag | White-box testing systems and/or methods for use in connection with graphical user interfaces |
US10275338B2 (en) * | 2017-04-04 | 2019-04-30 | Microsoft Technology Licensing, Llc | Automated system for fixing and debugging software deployed to customers |
-
2021
- 2021-08-20 CN CN202110957886.9A patent/CN113672511B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20000014249A (ko) * | 1998-08-19 | 2000-03-06 | 윤종용 | 원격지 컴퓨터의 장애 복구 방법 |
US10216621B1 (en) * | 2017-11-16 | 2019-02-26 | Servicenow, Inc. | Automated diagnostic testing of databases and configurations for performance analytics visualization software |
Non-Patent Citations (1)
Title |
---|
张普 ; 王青 ; 杨立光 ; .网络计算机集群负载均衡机制的研究.计算机工程与设计.2006,(第16期),全文. * |
Also Published As
Publication number | Publication date |
---|---|
CN113672511A (zh) | 2021-11-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103873287B (zh) | 一种基于企业服务总线消息监控平台的消息补偿方法 | |
CN104156863A (zh) | Ota网站的订单处理系统及方法 | |
CN102479113A (zh) | 异常自适应处理方法及系统 | |
CN105656696A (zh) | 一种维保系统及方法 | |
CN113672511B (zh) | 一种用于自动化测试的远程协助方法 | |
JP2013130901A (ja) | 監視サーバおよびそれを用いたネットワーク機器復旧システム | |
CN108762932A (zh) | 一种集群任务调度系统及处理方法 | |
CN112068963B (zh) | 一种嵌入式系统分布式调度系统 | |
CN109765833A (zh) | 一种监控物联设备控制状态的方法 | |
CN113114716A (zh) | 一种边云协同管控系统及方法 | |
CN112712606A (zh) | 一种基于运维服务的自动巡检管理的方法与系统 | |
CN109743204A (zh) | 一种智能化运维系统 | |
CN116208467A (zh) | 传输网故障智能流水线闭环处理方法和装置 | |
CN113420713A (zh) | 异常监控方法、装置、电子设备及计算机可读介质 | |
CN107590647A (zh) | 船舶管理系统的伺服监管系统 | |
CN107526670A (zh) | 服务自动监控方法、电子设备、计算机存储介质 | |
CN111240872A (zh) | 一种基于云计算的自助设备诊断方法 | |
CN111459752A (zh) | 一种对工作设备的运维方法、装置、服务器及操作终端 | |
CN202750105U (zh) | 一种列车故障动态监测系统 | |
CN116488724B (zh) | 一种光纤通信测试方法、介质及应用其的系统 | |
WO2023165453A1 (zh) | 单板处理方法、上位机、自动收板机、设备及存储介质 | |
CN105045759B (zh) | 金融自助设备的控制通信方法 | |
CN114257621B (zh) | 一种异常信号处理方法、装置、设备及存储介质 | |
CN114979987B (zh) | 异常短信识别重送方法、装置、电子设备和存储介质 | |
CN115695238A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |