记录和重新创建界面导航过程制造技术

技术编号:25998794 阅读:31 留言:0更新日期:2020-10-20 19:09
一种计算机系统,记录和重新创建由用户与主机系统一起执行的界面导航过程。在界面导航过程中,计算机系统通过使用用户正在其中执行界面导航过程的浏览器应用的浏览器扩展来观察用户与各种UI元素的交互。然后,浏览器扩展将存储关于用户正在执行的交互以及对其执行交互的UI元素的信息。浏览器扩展将所存储的交互发送到计算机系统,该计算机系统处理这些交互以生成界面导航记录的步骤。在一些实施例中,计算机系统还将在界面导航过程的最终UI状态下存在的一个或多个UI元素标识为“验证器”,该“验证器”可以用于确定界面导航过程的重新创建是否成功。

【技术实现步骤摘要】
【国外来华专利技术】记录和重新创建界面导航过程
技术介绍
本公开总体上涉及导航用户界面,并且更具体地涉及自动记录和重新创建由用户执行的界面导航过程。用户导航用户界面(UI)以与计算机系统通信。通过与UI的元素交互,用户可以使用计算机系统执行特定任务。某些任务可能要求用户与多个UI或UI“状态”(其以不同UI元素布置为特征)交互。通过这些多个UI状态的用户导航可以被描述为界面导航过程。计算机系统可能需要复制用户的界面导航过程以执行由用户请求的服务。例如,计算机系统在扫描用户的网络应用中的安全漏洞时复制用户的认证过程。收集计算机系统复制界面导航过程所需要的信息可以是一个需要大量用户参与的繁琐过程。通常,该信息经由对要从状态转变的动作的显式用户指定而被收集,这给用户带来了沉重的负担并且具有很高的用户错误风险。某些方法可以使用网络业务来识别设备与主机系统之间的交互,但不能有效地捕获用户与特定UI状态的交互。
技术实现思路
一种计算机系统记录并且重新创建由用户与主机系统一起执行的界面导航过程。为此,计算机系统观察用户手动执行界面导航过程,收集关于其与主机系统交互的信息,并且然后将该信息组织成“界面导航记录”。界面导航记录包括计算机系统可以执行以从用户的角度重新创建界面导航过程的步骤。在浏览器应用中的界面导航过程中,计算机系统使用浏览器扩展来观察用户与各种UI元素的交互。浏览器扩展存储关于用户正在执行的交互以及对其执行交互的UI元素的信息。在某些实施例中,浏览器扩展监测某些类型的交互或者过滤用户的交互以存储列入白名单的交互。浏览器扩展将所存储的交互发送到计算机系统,该计算机系统处理这些交互以生成界面导航记录的步骤。该处理可以包括在将交互转换为用于记录的步骤之前,进一步过滤交互并且优化交互。在一些实施例中,计算机系统还将在界面导航过程的最终UI状态下存在的一个或多个UI元素识别为“验证器”,该“验证器”可以用于确定界面导航过程的重新创建是否成功。浏览器扩展还可以监测浏览器应用与网络之间(例如,到主机系统)的业务以识别在界面导航过程中发生的网络交互。这些网络交互(或导出的摘要)也可以被发送到计算系统并且被添加到记录中。通过在用户像往常一样执行他们的手动界面导航过程的同时自动创建界面导航记录,计算机系统为系统捕获界面导航过程提供了最小介入方式。在某些情况下,基于与UI元素的交互来重新创建界面导航过程要比仅依靠网络业务的常规方法更为可靠,并且更可靠地模仿相同的浏览器行为。附图说明图1示出了根据一个实施例的记录和重放界面导航过程的计算机系统。图2是根据一个实施例的用于计算机系统的系统环境的框图。图3A是根据一个实施例的客户端设备的浏览器扩展的框图。图3B是根据一个实施例的计算机系统的框图。图4A是根据一个实施例的用于监测手动界面导航过程的方法的流程图。图4B是根据一个实施例的用于生成界面导航记录的方法的流程图。图5是根据一个实施例的用于基于界面导航记录来执行自动界面导航过程的方法的流程图。附图仅出于说明的目的而描绘了各种实施例。本领域技术人员将从以下讨论中容易地认识到,在不脱离本文中描述的原理的情况下,可以采用本文中示出的结构和方法的替代实施例。具体实施方式概述图1示出了根据一个实施例的界面导航过程的自动记录和回放。术语“界面导航过程”描述了由一组交互驱动的多个用户界面(UI)状态(例如,从初始UI状态通过任何中间UI状态(如果有)到最终UI状态)之间的一个或多个转变。在一个UI状态下执行特定交互会触发向另一UI状态的转变,而界面导航过程是这些触发和在UI状态之间的转变的组合。如在图2中进一步讨论的,当浏览器应用访问主机系统并且根据来自主机系统的指令显示内容时,浏览器应用可以在显示器上将这些UI状态呈现给用户。因此,这些UI状态可以由来自主机系统的指令确定,该指令可以在主机系统上访问的一个或多个页上提供。界面导航过程可以手动地(即,由用户)执行,或者自动地(即,由计算机)执行。在手动界面导航过程中发生的交互可以在执行过程中被“记录”以自动创建“界面导航记录”。界面导航记录存储用于重新创建触发从手动导航过程的触发转变的交互的步骤。然后,通过将界面导航记录应用于UI状态来执行自动界面导航过程。在图1的示例手动界面导航过程100中,用户从初始UI状态110a通过至少一个中间UI状态110b导航到最终UI状态110n。每个UI状态110具有呈现给用户的UI元素布置,并且用户可以与之交互以转变到下一UI状态110。UI元素是用户的显示器的可显示组成部分。这些可以包括在显示器中为用户显示的图形元素、界面形式、按钮和其他组件。UI元素通常从一个UI状态到另一UI状态是不同的。UI状态110a具有显示为“欢迎!”的标语UI元素111和显示为“登录”的按钮UI元素112。UI状态110b包括具有栏UI元素114和按钮UI元素115的表单弹出UI元素113。UI状态100n包括显示为“您好,Piper!”的标语UI元素116、爪子图像UI元素117和消防栓图像UI元素118。当用户与用户界面状态110交互时,这些交互120被自动检测到。在初始UI状态110a中,在初始UI状态110a转变为中间UI状态110b之前,检测到交互122(“移动光标越过标语111”和“悬停在按钮112上”)。在中间状态110b下,在中间UI状态110b转变到最终UI状态110n之前,检测到交互124(“双击栏114”、“在栏114中输入字符'p'、'i'、'p'、'r'、'e'”、“删除栏114中的字符'e'、'r'”、“在栏114中输入字符'e'、'r'”、“在表单113之上移动光标”和“点击按钮115”)。通过被动地监测由用户执行的交互120,可以确定对用户的常规手动界面导航过程100造成的干扰最小的触发器。验证器130是最终UI状态110n的可检测方面,当手动界面导航过程100成功时,这些可检测方面将出现,并且可以用于验证或表示该接口已经达到最终UI状态110n。这些可检测方面可以包括UI元素和网络业务,诸如网络服务器标头、查询字符串或请求。UI元素验证器的一个示例是“欢迎”标语,该“欢迎”标语仅在认证界面导航过程完成之后才出现。在该示例中,验证器130是“您好,Piper!”标语116的文本(其否则与标语111相同)、爪子图像117和消防栓图像118。这些验证器可以由用户识别或自动确定界面导航记录140包括基于从手动界面导航过程100收集的交互120和验证器130而生成的记录步骤142-146。在所示示例中,记录步骤142-146为“动作元素”格式,其中每个步骤指定在UI元素上发生的动作并且实现UI状态之间的转变。在一个实施例中,UI元素由XPath或CSS选择器识别。记录步骤142(“悬停在按钮112[之上]”和“等待”)基于在UI状态110a中检测到的交互122而被确定。记录步骤144(“在栏114[中]填充“piper”、“点击按钮115”和“等待本文档来自技高网...

【技术保护点】
1.一种方法,包括:/n由计算机系统从由用户执行的手动界面导航过程接收描述所述用户与一个或多个用户界面(UI)元素之间的多个交互的信息,所述手动界面导航过程包括在主机系统的多个UI状态之中的导航,所述导航从所述多个UI状态中的初始UI状态和所述多个UI状态中的最终UI状态开始;/n基于所述多个交互来确定界面导航记录的一个或多个步骤,所述一个或多个步骤中的每个步骤可由所述计算机系统执行,以利用所述主机系统的所述多个UI状态中的UI状态来重新创建所述多个交互中的至少一个交互;以及/n将所述界面导航记录存储在所述计算机系统处。/n

【技术特征摘要】
【国外来华专利技术】20180301 US 15/909,9791.一种方法,包括:
由计算机系统从由用户执行的手动界面导航过程接收描述所述用户与一个或多个用户界面(UI)元素之间的多个交互的信息,所述手动界面导航过程包括在主机系统的多个UI状态之中的导航,所述导航从所述多个UI状态中的初始UI状态和所述多个UI状态中的最终UI状态开始;
基于所述多个交互来确定界面导航记录的一个或多个步骤,所述一个或多个步骤中的每个步骤可由所述计算机系统执行,以利用所述主机系统的所述多个UI状态中的UI状态来重新创建所述多个交互中的至少一个交互;以及
将所述界面导航记录存储在所述计算机系统处。


2.根据权利要求1所述的方法,还包括:
基于白名单来过滤所述多个交互。


3.根据权利要求2所述的方法,其中所述白名单是由机器学习模型生成的,所述机器学习模型是根据关于先前生成的界面导航记录的信息而训练的。


4.根据权利要求1所述的方法,其中确定所述一个或多个步骤包括优化所述多个交互,所述优化减少了生成所述步骤的交互的数目。


5.根据权利要求1所述的方法,还包括:
从所述用户接收对所生成的步骤中的至少一个步骤的校正;以及
基于所接收的校正来修正所述界面导航记录。


6.根据权利要求1所述的方法,其中所述多个交互是由所述用户在所述手动界面导航过程中执行的所有所述交互的子集。


7.根据权利要求1所述的方法,还包括:
由所述计算机系统通过执行所述界面导航记录的所述一个或多个步骤来执行自动界面导航过程,所述自动界面导航过程重新创建在所述手动界面导航过程的所述主机系统的所述多个UI状态之中的所述导航。


8.根据权利要求7所述的方法,还包括:
通过在所述自动界面导航过程的所述最终UI状态下检测一个或多个验证器来验证所述自动导航过程成功,所述一个或多个验证器中的每个验证器是在所述手动界面导航过程的所述最终UI状态下找到的UI元素。


9.根据权利要求8所述的方法,还包括:
接收所述手动界面导航过程的所述多个UI状态中的最终UI状态和先前UI状态;以及
由所述计算机系统基于所述最终UI状态下存在的UI元素与所述先前UI状态下存在的UI元素的比较来确定一个或多个验证器。


10.根据权利要求1所述的方法,还包括:
通过在所述自动界面导航过程的所述最终UI状态下检测一个或多个否定验证器来确定所述自动导航过程不成功,所述一个或多个否定验证器中的每个否定验证器是在所述手动界面导航过程的所述初始UI状态下找到的UI元素。


11.一种包括指令的非暂态计算机可读介质,所述指令在由处理器执行时引起所述处理...

【专利技术属性】
技术研发人员:N·J·伍德索普B·D·塞达特M·博罗霍夫斯基
申请(专利权)人:美商新思科技有限公司
类型:发明
国别省市:美国;US

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

1