机器人代理端的远程测试方法及装置转让专利

申请号 : CN202010487829.4

文献号 : CN111673747B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 林晨陈文极林震宇徐立宇陶峥田浩王金哲

申请人 : 中国建设银行股份有限公司建信金融科技有限责任公司

摘要 :

本发明提供了一种机器人代理端的远程测试方法及装置,该方法包括:在机器人代理端执行完机器人流程的当前原子动作后,输出用户修正提示信息,所述用户修正提示信息用于询问用户是否修正当前原子动作;在获得用户基于所述用户修正提示信息输入的修正命令后,暂停机器人流程,修正当前原子动作,获得修正结果;在修正结果为修正成功后,获得机器人流程的下一个原子动作;重复执行以上步骤,直至执行完机器人流程的所有原子动作。本发明可以对机器人代理端进行远程测试,从而解决机器人流程开发时,开发环境和实际使用环境有所区别而导致的流程不可用问题。

权利要求 :

1.一种机器人代理端的远程测试方法,其特征在于,包括:在机器人代理端执行完机器人流程的当前原子动作后,输出用户修正提示信息,所述用户修正提示信息用于询问用户是否修正当前原子动作;

在获得用户基于所述用户修正提示信息输入的修正命令后,暂停机器人流程,修正当前原子动作,获得修正结果;

在修正结果为修正成功后,获得机器人流程的下一个原子动作;

重复执行以上步骤,直至执行完机器人流程的所有原子动作;

在修正当前原子动作之前,还包括:将当前原子动作的执行记录保存至日志中,所述当前原子动作的执行记录用于指导开发人员判断,获得修正当前原子操作的步骤,执行记录是原子动作的名称、使用的元素抓取标签串、打开的程序名;修正当前原子操作,包括:基于修正当前原子操作的步骤,修正当前原子操作。

2.如权利要求1所述的机器人代理端的远程测试方法,其特征在于,还包括:在获得用户基于所述用户修正提示信息输入的停止修正命令后,获得机器人流程的下一个原子动作。

3.如权利要求1所述的机器人代理端的远程测试方法,其特征在于,所述机器人代理端支持RDP协议;

修正当前原子动作,包括:通过RDP协议,修正当前原子动作。

4.一种机器人代理端的远程测试装置,其特征在于,包括:信息输出模块,用于在机器人代理端执行完机器人流程的当前原子动作后,输出用户修正提示信息,所述用户修正提示信息用于询问用户是否修正当前原子动作;

修正模块,用于在获得用户基于所述用户修正提示信息输入的修正命令后,暂停机器人流程,修正当前原子动作,获得修正结果;

下一个原子动作获得模块,用于在修正结果为修正成功后,获得机器人流程的下一个原子动作;

重复执行模块,用于重复执行以上步骤,直至执行完机器人流程的所有原子动作;

还包括日志记录模块,用于:将当前原子动作的执行记录保存至日志中,所述当前原子动作的执行记录用于指导开发人员判断,获得修正当前原子操作的步骤,执行记录是原子动作的名称、使用的元素抓取标签串、打开的程序名;修正模块具体用于:基于修正当前原子操作的步骤,修正当前原子操作。

5.如权利要求4所述的机器人代理端的远程测试装置,其特征在于,下一个原子动作获得模块还用于:

在获得用户基于所述用户修正提示信息输入的停止修正命令后,获得机器人流程的下一个原子动作。

6.如权利要求5所述的机器人代理端的远程测试装置,其特征在于,所述机器人代理端支持RDP协议;

修正模块具体用于:通过RDP协议,修正当前原子动作。

7.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至3任一项所述方法。

8.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有执行权利要求1至3任一项所述方法的计算机程序。

说明书 :

机器人代理端的远程测试方法及装置

技术领域

[0001] 本发明涉及测试机器人技术领域,尤其涉及一种机器人代理端的远程测试方法及装置。

背景技术

[0002] 当进行RPA机器人流程开发时,能够在实际使用机器人的机器上进行开发最为完美,但现实中会出现需要开发环境和使用环境不是同一台机器的情况,例如需要给远方的
客户进行流程开发,而不能现场开发,亦或是实际使用机器人的生产环境对数据高度敏感,
只允许在测试环境进行开发,之后迁移至生产环境。在这种情况下开发出来的流程机器人
脚本,有一定概率因为机器配置、环境等原因,导致在开发环境能够完美运行、而在远程的
客户机器上却无法顺利结束。
[0003] 目前市面上尚无合理的实现方案,一般都只是力求开发环境和实际使用环境的机器配置完全一致,来确保机器人流程的顺利迁移。但即便如此,仍有可能因为软硬件上的各
种差异,导致流程的失败。

发明内容

[0004] 本发明实施例提出一种机器人代理端的远程测试方法,用以对机器人代理端进行远程测试,从而解决机器人流程开发时,开发环境和实际使用环境有所区别而导致的流程
不可用问题,该方法包括:
[0005] 在机器人代理端执行完机器人流程的当前原子动作后,输出用户修正提示信息,所述用户修正提示信息用于询问用户是否修正当前原子动作;
[0006] 在获得用户基于所述用户修正提示信息输入的修正命令后,暂停机器人流程,修正当前原子动作,获得修正结果;
[0007] 在修正结果为修正成功后,获得机器人流程的下一个原子动作;
[0008] 重复执行以上步骤,直至执行完机器人流程的所有原子动作;
[0009] 在修正当前原子动作之前,还包括:将当前原子动作的执行记录保存至日志中,所述当前原子动作的执行记录用于指导开发人员判断,获得修正当前原子操作的步骤,执行
记录是原子动作的名称、使用的元素抓取标签串、打开的程序名;修正当前原子操作,包括:
基于修正当前原子操作的步骤,修正当前原子操作。
[0010] 本发明实施例提出一种机器人代理端的远程测试装置,用以对机器人代理端进行远程测试,从而解决机器人流程开发时,开发环境和实际使用环境有所区别而导致的流程
不可用问题,该装置包括:
[0011] 信息输出模块,用于在机器人代理端执行完机器人流程的当前原子动作后,输出用户修正提示信息,所述用户修正提示信息用于询问用户是否修正当前原子动作;
[0012] 修正模块,用于在获得用户基于所述用户修正提示信息输入的修正命令后,暂停机器人流程,修正当前原子动作,获得修正结果;
[0013] 下一个原子动作获得模块,用于在修正结果为修正成功后,获得机器人流程的下一个原子动作;
[0014] 重复执行模块,用于重复执行以上步骤,直至执行完机器人流程的所有原子动作;
[0015] 还包括日志记录模块,用于:将当前原子动作的执行记录保存至日志中,所述当前原子动作的执行记录用于指导开发人员判断,获得修正当前原子操作的步骤,执行记录是
原子动作的名称、使用的元素抓取标签串、打开的程序名;修正模块具体用于:基于修正当
前原子操作的步骤,修正当前原子操作。
[0016] 本发明实施例还提出了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述机器人代
理端的远程测试方法。
[0017] 本发明实施例还提出了一种计算机可读存储介质,所述计算机可读存储介质存储有执行上述机器人代理端的远程测试方法的计算机程序。
[0018] 在本发明实施例中,在机器人代理端执行完机器人流程的当前原子动作后,输出用户修正提示信息,所述用户修正提示信息用于询问用户是否修正当前原子动作;在获得
用户基于所述用户修正提示信息输入的修正命令后,暂停机器人流程,修正当前原子动作,
获得修正结果;在修正结果为修正成功后,获得机器人流程的下一个原子动作;重复执行以
上步骤,直至执行完机器人流程的所有原子动作。在上述过程中,在获得用户基于所述用户
修正提示信息输入的修正命令后,暂停机器人流程,修正当前原子动作,获得修正结果;在
修正结果为修正成功后,获得机器人流程的下一个原子动作,因此,通过重复执行,可以使
得开发人员在实际使用环境中直接定位问题,也能够让缺陷发生后,也能继续下一个原子
动作,减少调试的次数,而且每次只需执行一次机器人流程,就能够得到全部的缺陷信息。

附图说明

[0019] 为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本
发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以
根据这些附图获得其他的附图。在附图中:
[0020] 图1为本发明实施例中机器人代理端的远程测试方法的流程图;
[0021] 图2为本发明实施例机器人代理端的远程测试方法的详细流程图;
[0022] 图3为本发明实施例中机器人代理端的远程测试装置的示意图;
[0023] 图4为本发明实施例中计算机设备的示意图。

具体实施方式

[0024] 为使本发明实施例的目的、技术方案和优点更加清楚明白,下面结合附图对本发明实施例做进一步详细说明。在此,本发明的示意性实施例及其说明用于解释本发明,但并
不作为对本发明的限定。
[0025] 在本说明书的描述中,所使用的“包含”、“包括”、“具有”、“含有”等,均为开放性的用语,即意指包含但不限于。参考术语“一个实施例”、“一个具体实施例”、“一些实施例”、
“例如”等的描述意指结合该实施例或示例描述的具体特征、结构或者特点包含于本申请的
至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的
实施例或示例。而且,描述的具体特征、结构或者特点可以在任何的一个或多个实施例或示
例中以合适的方式结合。各实施例中涉及的步骤顺序用于示意性说明本申请的实施,其中
的步骤顺序不作限定,可根据需要作适当调整。
[0026] 发明人发现,现有技术对机器人进行测试基本可以描述如下:
[0027] 一是,确保开发环境和实际使用环境的绝对一致,主要体现在软件层面上,操作系统版本、软件版本、环境变量等参数都完全相同;
[0028] 二是 ,在开发环境中开发好机器人流程后,打包发布在实际使用环境中,进行测试;
[0029] 三是,在测试中如果出现问题,将问题缺陷通过日志或者截图记录下来,提交给开发人员,开发人员再根据这些情况,在开发环境重新修改机器人流程里的代码;
[0030] 从以上步骤中可以看出,缺陷的反馈和修改仍然要通过开发环境和实际使用环境之间反复轮转,而且机器人流程只要出错,就必须从头开始测试,效率十分低下。
[0031] 基于以上原因,本发明提出一种机器人代理端的远程测试方法,该方法不仅能够让开发人员在实际使用环境中直接定位问题,也能够让缺陷发生后,也能继续后续的步骤,
减少调试的次数。
[0032] 图1为本发明实施例中机器人代理端的远程测试方法的流程图,如图1所示,该方法包括:
[0033] 步骤101,在机器人代理端执行完机器人流程的当前原子动作后,输出用户修正提示信息,所述用户修正提示信息用于询问用户是否修正当前原子动作;
[0034] 步骤102,在获得用户基于所述用户修正提示信息输入的修正命令后,暂停机器人流程,修正当前原子动作,获得修正结果;
[0035] 步骤103,在修正结果为修正成功后,获得机器人流程的下一个原子动作;
[0036] 步骤104,重复执行以上步骤,直至执行完机器人流程的所有原子动作。
[0037] 在本发明实施例提出的方法中,在获得用户基于所述用户修正提示信息输入的修正命令后,暂停机器人流程,修正当前原子动作,获得修正结果;在修正结果为修正成功后,
获得机器人流程的下一个原子动作,因此,通过重复执行,可以使得开发人员在实际使用环
境中直接定位问题,也能够让缺陷发生后,也能继续下一个原子动作,减少调试的次数,而
且每次只需执行一次机器人流程,就能够得到全部的缺陷信息。
[0038] 具体实施时,机器人代理端是在RPA(Robotic Process Automation,机器人流程自动化)软件中,用来执行RPA流程脚本的软件,通常安装在需要执行流程脚本的机器上。而
本发明实施例中的用户对应的是开发人员。
[0039] 在一实施例中,所述机器人代理端支持RDP协议;
[0040] 修正当前原子动作,包括:通过RDP协议,修正当前原子动作。
[0041] 在上述实施例中,RDP(Remote Desktop Connection,远程桌面连接)为目前业界部分RPA厂商均已集成的功能,即开发人员可以通过RDP协议,观察到远程桌面上的机器人
是否正在按照正确的步骤执行,从而修正当前原子动作。
[0042] 具体实施时,将一系列RPA机器人操作称为一个原子动作,例如:打开excel,新建一个Sheet页签,在这个Sheet的A1格中填入“Hello World”,保存退出。以上就可以分为四
个原子动作。每个原子动作不一定是一个简单的业务操作,可以是一组业务操作的组合,但
拆分得越细,对后续远程测试则越细致。
[0043] 在机器人代码中,步骤101‑步骤102可以称为“用户修正操作”,实现步骤101‑ 步骤102的组件可以为用户修正操作组件,具体实施时,输出用户修正提示信息可以通过在机
器人代理端的执行界面上,弹出win32确认框的方式,win32确认框的显示内容可以是询问
用户,此原子动作的操作是否正确。开发人员通过RDP远程确认,如果选是,说明原子动作的
操作正确,此时获得的是停止修正命令,如果开发人员选择否,则获得的是修正命令。因此,
在一实施例中,所述方法还包括:
[0044] 在获得用户基于所述用户修正提示信息输入的停止修正命令后,获得机器人流程的下一个原子动作。
[0045] 在步骤102中,在获得用户基于所述用户修正提示信息输入的修正命令后,暂停机器人流程,修正当前原子动作,获得修正结果,而在一实施例中,在修正当前原子动作之前,
还包括:
[0046] 将当前原子动作的执行记录保存至日志中,所述当前原子动作的执行记录用于指导开发人员判断,获得修正当前原子操作的步骤;
[0047] 修正当前原子操作,包括:基于修正当前原子操作的步骤,修正当前原子操作。
[0048] 在上述实施例中,执行记录可以是原子动作的名称、使用的元素抓取标签串、打开的程序名等,在记录完成后;由于执行记录可用于获得修正当前原子操作的步骤,因此,本
发明方法就可以基于修正当前原子操作的步骤,通过RDP协议修正当前原子操作,获得修正
结果,在修正结果为修正成功后,还可以弹出第二个确认框,内容为“请修正原子动作后点
击继续”,开发人员(用户)点击继续后,获得机器人流程的下一个原子动作,因此,通过重复
执行以上步骤,可执行完机器人流程的所有原子动作,流程结束。
[0049] 这样,每次只需执行一次机器人流程,就能够得到全部的缺陷信息,而且开发人员能够对测试的环境和过程有所了解,修复缺陷也更加容易。
[0050] 机器人代理端如果支持debug/release模式切换,则后续工作更加容易。当需要进行测试的时候,将机器人代理端切换成debug模式,执行步骤101‑步骤104,即所有的用户修
正操作组件全部生效;当代理端切换为release模式时,则执行机器人流程至结束,用户修
正操作组件失效,从而不会被弹出的上述确认框阻断流程。
[0051] 因此,本发明实施例提出的方法降低了远程开发机器人流程的困难程度。即使开发环境和实际使用环境有些微区别,也能够通过远程调试的方法快速定位问题,快速修复
缺陷。每次只需执行一次机器人流程,就能够得到全部的缺陷信息,减少调试的次数。另外,
开发人员能够对测试的环境和过程有所了解,修复缺陷也更加容易。
[0052] 基于上述实施例,本发明提出如下一个实施例来说明机器人代理端的远程测试方法的详细流程,图2为本发明实施例机器人代理端的远程测试方法的详细流程图,包括:
[0053] 步骤201,在机器人代理端执行完机器人流程的当前原子动作后,弹出Win32框,询问用户此原子动作是否正确;在用户选择是时,进入步骤206,否则进入步骤202;
[0054] 步骤202,暂停机器人流程;
[0055] 步骤203,将当前原子动作的执行记录保存至日志中,获得修正当前原子操作的步骤;
[0056] 步骤204,基于修正当前原子操作的步骤,修正当前原子操作,获得修正结果;
[0057] 步骤205,在修正结果为修正成功后,弹出第二个确认框,内容为“请修正原子动作后点击继续”,用户点击继续后,进入步骤206;
[0058] 步骤206,获得机器人流程的下一个原子动作;
[0059] 步骤207,判断下一个原子动作是否为空,若是,结束流程,否则,返回步骤201。
[0060] 当然,可以理解的是,上述详细流程还可以有其他变化例,相关变化例均应落入本发明的保护范围。
[0061] 综上所述,在本发明实施例提出的方法中,在机器人代理端执行完机器人流程的当前原子动作后,输出用户修正提示信息,所述用户修正提示信息用于询问用户是否修正
当前原子动作;在获得用户基于所述用户修正提示信息输入的修正命令后,暂停机器人流
程,修正当前原子动作,获得修正结果;在修正结果为修正成功后,获得机器人流程的下一
个原子动作;重复执行以上步骤,直至执行完机器人流程的所有原子动作。在上述过程中,
在获得用户基于所述用户修正提示信息输入的修正命令后,暂停机器人流程,修正当前原
子动作,获得修正结果;在修正结果为修正成功后,获得机器人流程的下一个原子动作,因
此,通过重复执行,可以使得开发人员在实际使用环境中直接定位问题,也能够让缺陷发生
后,也能继续下一个原子动作,减少调试的次数,而且每次只需执行一次机器人流程,就能
够得到全部的缺陷信息。
[0062] 本发明实施例还提出一种机器人代理端的远程测试装置,其原理与机器人代理端的远程测试方法类似,这里不再赘述,图3为本发明实施例中机器人代理端的远程测试装置
的示意图,包括:
[0063] 信息输出模块301,用于在机器人代理端执行完机器人流程的当前原子动作后,输出用户修正提示信息,所述用户修正提示信息用于询问用户是否修正当前原子动作;
[0064] 修正模块302,用于在获得用户基于所述用户修正提示信息输入的修正命令后,暂停机器人流程,修正当前原子动作,获得修正结果;
[0065] 下一个原子动作获得模块303,用于在修正结果为修正成功后,获得机器人流程的下一个原子动作;
[0066] 重复执行模块304,用于重复执行以上步骤,直至执行完机器人流程的所有原子动作。
[0067] 在一实施例中,下一个原子动作获得模块303还用于:
[0068] 在获得用户基于所述用户修正提示信息输入的停止修正命令后,获得机器人流程的下一个原子动作。
[0069] 所述装置还包括日志记录模块305,用于:
[0070] 将当前原子动作的执行记录保存至日志中,所述当前原子动作的执行记录用于指导开发人员判断,获得修正当前原子操作的步骤;
[0071] 修正模块302具体用于:基于修正当前原子操作的步骤,修正当前原子操作。
[0072] 在一实施例中,所述机器人代理端支持RDP协议;
[0073] 修正模块302具体用于:通过RDP协议,修正当前原子动作。
[0074] 综上所述,在本发明实施例提出的装置中,在机器人代理端执行完机器人流程的当前原子动作后,输出用户修正提示信息,所述用户修正提示信息用于询问用户是否修正
当前原子动作;在获得用户基于所述用户修正提示信息输入的修正命令后,暂停机器人流
程,修正当前原子动作,获得修正结果;在修正结果为修正成功后,获得机器人流程的下一
个原子动作;重复执行以上步骤,直至执行完机器人流程的所有原子动作。在上述过程中,
在获得用户基于所述用户修正提示信息输入的修正命令后,暂停机器人流程,修正当前原
子动作,获得修正结果;在修正结果为修正成功后,获得机器人流程的下一个原子动作,因
此,通过重复执行,可以使得开发人员在实际使用环境中直接定位问题,也能够让缺陷发生
后,也能继续下一个原子动作,减少调试的次数,而且每次只需执行一次机器人流程,就能
够得到全部的缺陷信息。
[0075] 本申请的实施例还提供一种计算机设备,图4为本发明实施例中计算机设备的示意图,该计算机设备能够实现上述实施例中的机器人代理端的远程测试方法中全部步骤,
所述电子设备具体包括如下内容:
[0076] 处理器(processor)401、存储器(memory)402、通信接口(Communications Interface) 403和总线404;
[0077] 其中,所述处理器401、存储器402、通信接口403通过所述总线404完成相互间的通信;所述通信接口403用于实现服务器端设备、检测设备以及用户端设备等相关设备之间的
信息传输;
[0078] 所述处理器401用于调用所述存储器402中的计算机程序,所述处理器执行所述计算机程序时实现上述实施例中的机器人代理端的远程测试方法中的全部步骤。
[0079] 本申请的实施例还提供一种计算机可读存储介质,能够实现上述实施例中的机器人代理端的远程测试方法中全部步骤,所述计算机可读存储介质上存储有计算机程序,该
计算机程序被处理器执行时实现上述实施例中的机器人代理端的远程测试方法的全部步
骤。
[0080] 本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实
施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机
可用存储介质(包括但不限于磁盘存储器、CD‑ROM、光学存储器等) 上实施的计算机程序产
品的形式。
[0081] 本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流
程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序
指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产
生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实
现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
[0082] 这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指
令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或
多个方框中指定的功能。
[0083] 这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或
其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一
个方框或多个方框中指定的功能的步骤。
[0084] 以上所述的具体实施例,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施例而已,并不用于限定本发明的保
护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本
发明的保护范围之内。