[6.1]UI自动化介绍-UiPath ARD Certification Training

前言:【【非原创】】UiPath Advanced RPA Developer Certification Training的课程资料机翻版。
课程链接:Link

1 关于课程

自动化用户界面 (UI) 是将 RPA 与其他自动化技术区分开来的最重要功能之一。本课程向 RPA 开发人员介绍了关键的 UI 自动化概念以及一些具有现代和经典设计经验的实践练习。
本课程由3个模块组成:

  1. UI自动化介绍
    该模块为 RPA 开发人员提供了与用户界面自动化相关的所有基本概念。
    模块时长:45分钟
    本模块涵盖:
  • UI 自动化的关键概念。
  • 现代和经典设计体验之间的差异。
  • 如何在 Studio 中启用现代设计体验。
  • 在 Studio 级别为所有新自动化项目配置默认设计体验。
  1. 具有现代体验的 UI 自动化
    该模块为开发人员提供了使用现代体验构建 UI 自动化项目的关键。
    模块时长:1h 45min
    本模块涵盖:
  • 介绍现代体验。
  • 记录 UI 交互。
  • UI 自动化中的故障排除和调试。
  1. 经典体验的 UI 自动化
    本模块涵盖使用 Studio 中的经典体验构建 UI 自动化项目。
    模块时长:2 小时
    本模块涵盖:
  • 输入法和活动。
  • 输出方法和动作。
  • UI 同步活动。

2 UI自动化介绍

2.1 模块概述

该模块旨在向 RPA 开发人员展示与 UI 自动化相关的所有基本概念。

您将在本模块中学到什么

在本单元结束时,您应该能够:

  1. 解释什么是 UI 自动化。
  2. 使用 UiPath Studio 解释 UI 自动化的关键元素。
  3. 解释 Studio 中现代和经典设计体验之间的区别。
  4. 在 Studio 中启用现代设计体验。
  5. 在 Studio 级别为所有新自动化项目配置默认设计体验。

2.2 什么是 UI 自动化?

它是什么?
用户界面或图形用户界面自动化(UI 自动化)是指通过模拟鼠标和键盘控件与应用程序内的图形元素进行交互的过程。
正如人类用户通过单击键入选择文本等活动使用应用程序一样,RPA 开发人员可以在 UiPath Studio 中配置 UiPath 机器人,以更快、更准确地执行相同的任务。
通过 UiPath 与从 Win32 到 WPF、HTML 和 Java 的所有主要 GUI 框架之间的深度集成,RPA 开发人员可以轻松地自动化所有类型的桌面应用程序。
UiPath 通过其自身特定于平台的属性识别图形对象,并提供统一的 GUI 自动化 API,该 API 在任何地方都以相同的方式工作。
您应该如何看待 UI 自动化?
考虑到机器人将像人类一样在应用程序用户界面 (UI) 中执行操作,RPA 开发人员需要在逻辑、顺序路径中配置每个操作。
让我们来看看这个例子。
任务:“UI 演示”应用程序中的数据输入
让我们考虑一下,我们的目标是自动化一个简单的任务,即在 UI Demo 应用程序中输入数据、单击接受按钮并获取交易编号。
为此,我们需要考虑我们想要开始的应用程序的状态,人类用户将如何执行这些步骤,然后将任务分解为每个步骤。作为第一步,让我们看看人类的道路。
人类操作步骤:
开始状态:用户界面演示在存款屏幕上打开。
在这里插入图片描述

人类用户采取的步骤:

  1. 选择 UI 演示应用程序。
  2. 在“兑现”字段中输入值。
  3. 点击接受。
  4. 获取交易编号。
    人类用户的步骤是明确的。下一步是将这些步骤转化为 UiPath 活动并在 UiPath Studio 中进行配置,以便机器人可以执行相同的任务。

机器人路径
在这里插入图片描述

开始状态:用户界面演示在存款屏幕上打开。
机器人执行的步骤:

  1. 附加窗口活动标识了要在其中执行步骤的 UI 演示应用程序。
  2. Type Into 活动标识“Cash In”字段并在 cashIn 字符串变量中输入值。
  3. 单击活动标识接受按钮并单击它。
  4. 获取文本活动标识事务 # 的值,获取它并将其存储在变量中。
    很简单吧?
    让我们回顾一下
    主要要点
    ——
    UI 自动化是通过特定 UI 活动模拟人工输入和输出操作来自动化应用程序用户界面的过程。
    自动化 UI 的第一步是了解人类用户将采取的步骤的逻辑顺序。第二步是将这些步骤转换为 UiPath Studio 活动并对其进行配置。
    UI 或应用程序的复杂性无关紧要。所有桌面应用程序都可以通过使用通用或应用程序定制的活动实现自动化。

2.3 UI自动化如何工作?

2.3.1 使用 Studio 自动化用户界面

在上一课中,我们看到了一个非常简单的 UI 自动化示例。您可能会遇到很多问题,例如:“我可以使用什么样的活动?”、“机器人如何知道要定位哪些元素?”或“我有什么选择来控制活动的执行?”。在本课中,我们将使用 UiPath Studio 探索与 UI 自动化相关的关键概念。
UI 自动化建立在七个关键概念之上。这些是:

  1. UI自动化活动

  2. 活动属性

  3. 定位方法

  4. 输入输出方式

  5. 录制器和向导

  6. 对象存储库

  7. 人工智能计算机视觉

  8. Activities (What to do)
    Activities告诉机器人该做什么。您可以在“Activities”面板中找到它们,它们有四种类型:

  • Containers- 选择特定的应用程序或浏览器
  • Input - 将输入发送到应用程序界面
  • Output - 从应用程序界面获取输出
  • Synchronization(同步) - 根据状态控制您的流程UI 元素(例如,当 UI 元素出现时做某事)
  1. 属性Properties (如何操作)
    属性控制机器人执行活动的方式。在这里,您可以控制是否希望机器人在执行活动之前或之后等待,在哪个元素上执行活动,如果找不到元素则等待多长时间等等。

  2. AI 计算机视觉
    AI 计算机视觉是一种 AI 技能,可以让所有 UiPath 机器人看到计算机屏幕上的每个元素。这是我们将在以后的课程中介绍的更高级的功能。

  3. 属性(如何操作)
    属性控制机器人执行活动的方式。在这里,您可以控制是否希望机器人在执行活动之前或之后等待,在哪个元素上执行活动,如果找不到元素则等待多长时间等等。

  4. 定位方法Targeting Methods
    定位方法告诉机器人在哪个 UI 元素上执行操作。这是我们将花费大量时间研究的
    一个关键功能。到目前为止,最常用的定位方法是选择器。

  5. 输入和输出方法
    输入和输出方法告诉机器人使用什么技术向接口发送输入或从接口获取输出。它们可以在您的 UI 自动化的可靠性、工作速度以及最重要的是,它是否只能在前台窗口或后台窗口上运行方面产生巨大的差异。

  6. 录制器
    记录器将通过逐步跟踪您与 GUI 的手动交互并将其转换为一系列 Studio 活动,帮助您更快地开发 UI 自动化。

  7. 对象存储库The Object Repository
    对象存储库是一个更高级的功能,但尽早了解它很有用。它允许开发人员将 UI 元素标识符存储在存储库中,对其进行微调并与同事共享,以加快 UI 自动化开发和项目更新。

现在让我们看一下下图,以了解所有内容是如何组合在一起的。随着我们在本课程中的进步,我们将更多地了解每一个。
在这里插入图片描述
让我们从活动开始吧!

2.3.2 UI自动化活动

UI 自动化活动让开发人员可以快速为机器人编写指令以与各种应用程序的界面进行交互。
活动可分为:

  1. Containers 容器 - 这些是识别进程需要与之交互的浏览器或应用程序的活动。 Container 中包含的所有活动都将在同一个应用程序上执行。一些示例是打开浏览器、附加浏览器、打开应用程序或使用应用程序/浏览器。
  2. 输入活动 - 这些活动将输入发送到 UI 元素。它们可用于点击、检查、输入、发送热键等。
  3. 输出活动 - 这些活动从 GUI 元素获取信息。他们可以指示机器人通过使用各种方法获取文本、获取结构化数据或获取包含图像的 UiElements。
  4. Synchronization 同步活动 - 它们帮助您根据 UI 行为创建触发器,从而使机器人能够在机器上发生特定事件时执行某些操作。
    在这里插入图片描述

2.3.3 活动属性

就像其他类型的活动一样,属性决定了机器人如何执行操作。它们可以在“属性”面板中找到。 UI 自动化活动具有特定的属性集,具体取决于活动的类型。以下是一些常见属性的示例:

PropertyWhat it does
DelayAfter/DelayBefore机器人在执行活动之前或之后等待的毫秒数。
ContinueOnError执行活动时遇到的异常会被抛出还是被忽略。例如,如果没有找到元素,机器人会抛出错误并停止执行,还是会忽略并继续?)
Target提供多个与标识目标 UI 元素相关的属性。
Timeout (milliseconds)机器人将尝试在 UI 元素上执行操作的毫秒数。超过此时间后报错。
SendWindowsMessages/Simulate Type我们使用什么输入方式进行输入活动。(Windows消息/模拟输入)
Output它以变量的形式存储活动的输出。

2.3.4 定位方法 Targeting methods

定位方法是属性的子集。它们提供了多种方法来识别机器人将与之交互的 UI 元素。主要的定位方法是:

  • 选择器 Selectors
  • 模糊选择器 Fuzzy Selectors
  • 图片 Image
  • 锚点 Anchors
    最常用的定位方法是选择器。
    在这里插入图片描述
  1. 选择器 Selectors
    UiPath Studio 中的选择器是一项功能,可通过存储为 XML 片段的地址和属性来识别用户界面元素。如果我们将 GUI 界面视为从顶部节点到特定 UI 元素的容器的复杂层次结构,则选择器 XML 代码充当元素的地址。选择器需要精确的地址匹配。
  2. 模糊选择器 Fuzzy Selectors
    模糊选择器使您能够根据模式而不是与输入的精确匹配来定位字符串。这导致了一种更灵活的方法来识别元素并根据多个属性验证选择器,即使有些在自动化过程中容易发生变化。
  3. Image
    此方法读取应用程序窗口可见区域中的像素阵列,以确定它是否与目标阵列匹配。
  4. 锚点 Anchor
    一些 UI 元素比其他元素更不稳定。它们可能具有不断变化的属性、屏幕位置或图像。锚点可以帮助我们识别相对于更稳定的元素,我们需要使用的不稳定元素。在我们的示例中,“Cash In”标签是 Anchor。

2.3.5 输入和输出方法

正如我们已经讨论过的,每次我们将数据插入到应用程序中,或者我们向系统发送命令以产生更改(或继续)时,我们都会执行输入操作。 UiPath 中使用输出操作从 UI 元素中提取数据(通常为文本)。输出方法使输出操作能够从 UI 元素中提取数据。
UiPath 提供了多种方法来执行输入和输出操作。这些方法控制我们自动化的几个重要方面:

  • 动作执行的速度有多快?
  • 可以在背景或隐藏窗口上运行吗?
  • 是否干扰用户?
  • 它与所有应用程序兼容吗?
    不同的方法可用于输入和输出活动。
    Input methods
  • Hardware Events
    单击:鼠标光标在屏幕上移动。
    键入:键盘驱动程序用于键入单个字符。在后台不起作用。
    在自动化过程中,有人值守的用户不能触摸鼠标或键盘
  • 发送窗口消息
    重放使用鼠标/键盘时目标应用程序接收到的窗口消息。
    在后台工作。用户可以在执行自动化流程期间处理其他活动。
  • 模拟Simulate
    使用目标应用程序的技术(API 级别)发送指令。在后台工作。用户可以在执行自动化流程期间处理其他活动。
    Output methods
  • Full Text
    FullText 方法是默认方法,在大多数情况下已经足够好了。它是最快的,可以提取隐藏文本,准确率100%,可以在后台工作。
  • 本地Native
    Native 方法与使用图形设计接口 (GDI) 的应用程序兼容,GDI 是用于表示图形对象的 Microsoft API。不提取隐藏文本,不能在后台工作;就像 FullText 一样,它不支持虚拟环境
  • OCR
    OCR(或光学字符识别)是唯一适用于虚拟环境和从图像“读取”文本的输出方法。它的技术依赖于识别每个字符及其位置。另一方面,它无法在后台工作,无法提取隐藏文本,并且其速度是迄今为止最低的。

2.3.6 录制器 Recorders

录制是 UiPath Studio 的重要组成部分,它可以帮助您在自动化业务流程时节省大量时间。此功能使您能够轻松捕获用户在屏幕上的操作并将其转换为序列。这些项目可以修改和参数化,以便您可以根据需要轻松地在许多其他流程中重放和重用它们。

2.3.7 对象存储库

对象存储库通过将 UI 元素捕获为存储库中的对象、可跨项目共享来确保 UI 元素的管理、可重用性和可靠性。它允许在自动化项目内部和跨自动化项目==创建和重用 UI ==分类法。这是一个更高级的功能,我们稍后会详细了解。

2.3.8 AI 计算机视觉

AI 计算机视觉活动包包含重构的基本 UI 自动化活动,例如单击、键入或获取文本。 CV 活动与其对应活动之间的主要区别在于它们使用了我们机器学习团队内部开发的计算机视觉神经网络。神经网络能够在不使用选择器的情况下识别 UI 元素,例如按钮、文本输入字段或复选框。这是一项高级功能,我们将在稍后详细了解。

让我们回顾一下主要内容——
UiPath 中 UI 自动化的关键概念是:
UI 自动化活动、活动属性、目标方法、输入和输出方法、记录器、对象存储库和计算机视觉。 UI 自动化活动 - 活动可以是容器、输入活动、输出活动或同步活动。
活动属性 - 属性决定了机器人如何执行操作。它们可以在“属性”面板中找到。
定位方法 - 它们提供了多种方法来识别机器人将与之交互的 UI 元素。到目前为止,最常见的是选择器。
输入和输出方法 - 定义用于与 UI 元素交互的技术类型。输入法使用的技术与输出法使用的技术不同。
录制器 - 此功能使您可以轻松捕获用户在屏幕上的操作并将其转换为序列。
对象存储库 - 对象存储库通过将 UI 元素捕获为存储库中的对象、可跨项目共享来确保 UI 元素的管理、可重用性和可靠性。
AI 计算机视觉 - 无需使用选择器即可识别 UI 元素,例如按钮、文本输入字段或复选框。

3 现代设计体验

3.1 介绍经典与现代的设计体验

什么是设计体验?
到目前为止,我们已经大致了解了 UI 自动化。在使用这些功能之前,您需要了解最后一件事——UiPath Studio 提供了两种开发 UI 自动化的方法:经典设计体验现代设计体验。这些设计经验可帮助开发人员在构建 UI 自动化时适应不同的环境。
默认设计体验是从项目设置在项目级别设置的,或者从Backstage View > Settings > Design为所有新项目设置。刚开始时,默认体验是经典。
对于所有新项目,我们可以从Backstage View > Settings > Design中进行设置。刚开始时,默认体验是经典。
有什么区别?
经典设计体验和现代设计体验之间的主要区别基于以下关键概念

  1. UI 自动化活动
  2. 活动属性
  3. 定位方法
  4. 记录器和向导
  5. 对象存储库

3.1.1 UI 自动化活动

默认情况下,每个体验中都有一组单独的 UI 活动可用。无论选择的自动化项目体验是现代的还是经典的,都可以启用另一组活动。如果默认体验是经典体验,要查看现代活动,只需从“活动”面板中选择“显示现代”,反之亦然。在下图中,我们启用了现代 UI 活动。
在这里插入图片描述
示例:现代体验中可用的使用应用程序/浏览器卡。
一个很好的例子是使用应用程序/浏览器现代活动,它取代了以下经典活动:

  • 打开应用程序 - 打开浏览器 - 附加窗口 - 附加浏览器 - 元素范围 - 关闭窗口 - 启动进程。

3.1.2 活动属性

由于定位方法和活动行为不同,经典和现代活动的属性略有不同。我们将在以下课程中了解更多相关信息。

3.1.3 定位方法

来自 Modern Experience Capture Elements 向导的图像,显​​示了堆叠的定位方法。使用经典活动时,选择器是 UI 元素最常用的定位方法(99% 的时间)。在不可靠的情况下,您可以手动更改更新活动以使用模糊选择器或锚点。现代活动将在选择器、模糊选择器、锚点和图像的堆叠选项中循环,以按照我们刚刚介绍的顺序确定最可靠的选项。如果前一种方法不可靠,它会自动选择下一种。这种定位技术称为统一目标。
在这里插入图片描述

3.1.4 记录器和向导

Modern 和 classic 提供两组不同的记录器:
现代体验 - 提供应用程序/Web 和计算机视觉记录器。
经典体验 - 提供 Basic、Desktop、Web、Image、Native Citrix 和 Computer Vision 记录器。
当谈到抓取向导时:现代体验 - 表提取向导可用于数据抓取。经典体验 - 提供数据抓取和屏幕抓取向导。
现代体验记录器和向导位于顶部,经典体验位于下方。

3.1.5 对象存储库

面板的对象存储库片段,仅在现代体验中可用。对象存储库通过将 UI 元素捕获为存储库中可跨项目共享的对象来确保 UI 元素的管理、可重用性和可靠性。对象存储库仅在现代设计体验中可用。不要担心记住所有这些。了解差异的关键领域是很有用的,如果需要,您可以稍后参考本课程。
在这里插入图片描述
让我们回顾一下主要内容
UiPath Studio 中有两种 UI 自动化设计体验:modern 和classic。默认体验是classic的。
这可以在项目级别或所有新项目中更改。这两种体验在以下方面有所不同:
活动:两种体验都提供不同的活动,但您可以过滤“活动”窗格以查看非默认体验中的活动。
活动属性:modern 和classic活动的属性略有不同。
定位方法:classic主要使用选择器,而modern 使用统一目标(一组选择器、模糊选择器、锚点和图像)。
录制器:modern 提供带有两个录制器的简化录制器解决方案,而classic提供六个录制器。
抓取向导:modern 提供表提取向导,而classic提供数据抓取和屏幕抓取向导。
对象存储库:对象存储库仅适用于modern 设计体验。

3.2 启用现代设计体验

默认情况下不启用现代设计体验。
下面的视频将帮助我们学习以下内容:如何在现代活动和经典活动之间进行转换。如何将您的新自动化项目设置为默认设计体验。如何在项目层面改变设计体验。
您好,欢迎来到 UI 自动化设计体验的介绍。在本视频中,我们将概述 UiPath Studio 提供的用于开发自动化用户界面的项目的两种方法:现代和经典。更具体地说,我们将使用 Modern App-Web Recorder,在 Studio 中的两种设计体验之间进行切换,然后花一些时间研究两者之间的差异和相似之处以及它们使用的定位方法。
我们将从现代设计经验开始。
它在 Studio 和 Studio Pro 配置文件中都可用,并且它是 StudioX 中唯一可用的配置文件。它提供了一种简化的浏览器和应用程序工作方式。
我们先来看看录音机。我们可以通过单击设计功能区上的图标来访问它。记录器根据我们在屏幕上采取的步骤生成 UI 自动化活动序列。要开始,我们需要单击“开始录制”,并指出我们要录制的应用程序,在我们的例子中是“DoubleUI”。一旦我们选择了应用程序,我们就可以指明我们想要捕获的 UI 元素。让我们指出“Cash In”字段。如您所见,在我们指定字段后,记录器已将其识别为输入字段。我要求我们在那里输入值,或者数据源,就像一个变量。在这个例子中,让我们来看看后者。我们只需右键单击该字段并选择“创建变量”。我们将其称为“Cash In”,……然后单击“Confirm”。好的!我们已经记录了一组附加到双 UI 应用程序的步骤,并将“Cash In”变量中的值输入到应用程序的“Cash In”字段中。对我们这里的目的来说已经足够了。让我们从录音机中选择“保存并退出”,然后返回到 Studio,在那里我们可以看到生成的序列的样子。 Wehavean 应用程序卡和 Type Into 活动。应用程序卡指示目标应用程序…因此“Do 容器”中的所有 UI 交互活动将仅针对目标应用程序中存在的元素。各种活动可用于提供 UI 交互指令,如单击、键入、获取文本等。所有活动都可以在“UI 自动化”、“应用程序”下的活动面板中找到。到目前为止,在这个例子中,我们已经看到了现代设计体验的实际效果。在使用经典体验做同样的事情之前,让我们看看如何在两者之间切换。这可以在项目级别或工作室级别完成,作为启动新项目时的默认选项。我们现在就去项目级别。访问项目面板,然后单击项目设置。显示项目设置窗口。在General部分,我们可以看到Modern Design Experience切换。让我们将其设置为“否”…并重新加载项目。这意味着我们目前正在运行经典设计体验。我们可以立即注意到一些差异:我们有可用的经典记录器,对象存储库被禁用…活动面板中显示的活动是经典类型。但是,即使我们切换到经典设计体验,现代活动仍然有效,因为它们包含在“UiPath UI 自动化包”版本 20.10 及更高版本中。但是,基于设计体验切换,活动面板中只会显示特定的活动。如果我们想在经典设计体验中添加一个现代的“输入”活动,我们可以点击活动面板中的过滤按钮…并启用“显示现代”。他们在这里,在“活动”面板的“现代”节点下!运行Modern的时候也可以这样,赶紧切换到Modern Design Experience,尝试加入经典活动。如您所见,显示的默认 UI 活动是现代类型的。但是如果启用“Show Classic”,…我们将能够看到现代和经典的活动。无论我们设置了何种过滤器选项,在现代设计体验中都没有对应的经典活动将始终可用。一个例子是“查找元素”活动,它可以用在已经添加到我们工作流程中的现代应用程序卡中。事实上,我们可以使用现代应用卡中的所有经典UI活动。此外,我们还可以在经典活动和现代活动之间传递输出数据。例如,让我们添加一个经典的“附加浏览器”活动。此处的 UIBrowser 输出可用作…作为现代应用程序卡的输入,反之亦然。对其他经典活动(例如“打开应用程序”或“打开浏览器”)也可以这样做。我们暂时将其删除,因为我们不需要它。到目前为止,我们已经在项目级别的经典和现代设计体验之间切换。让我们看看如何将两者之一设置为 Studio 中所有新项目的默认值。所以,让我们访问后台视图。我们在设置,设计下有一个新参数,称为“为新项目使用现代”。通过使用此切换,我们可以将默认设置设置为从现在开始为所有新项目使用现代或经典设计体验。现在,让我们回到我们的工作流程并快速浏览一下定位方法。 ModernActivity 使用UnifiedTarget 来识别屏幕上的UI 元素。 Unified Target 实际上是一系列定位方法:Selectors、FuzzySelectors、Image 和 Anchors。机器人使用给定的顺序,如果一个失败,它会尝试下一个。经典活动往往只使用一种定位方法,目前最常见的是选择器。在 Modern Recorder 中,我们可以使用 UI Explorer 直接编辑选择器,这为我们提供了更多控制。回到 Studio,在活动属性中,我们可以访问目标详细信息,例如 Targeting Methods、Selector、Fuzzy Selector、Window Selector 和 Anchor。这使我们的 demoontheUI 自动化设计体验结束。快速回顾一下,在本视频中,我们快速了解了现代应用程序/网络记录器,我们已经看到了如何在项目和工作室级别的现代和经典设计体验之间切换,并且我们已经探索了差异在记录器、对象存储库、活动和目标方法方面介于两者之间。我们希望你发现这个视频很有用。感谢您的收看,我们下期再见!

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值