- 发行说明
- 入门指南
- 设置和配置
- 自动化项目
- 依赖项
- 工作流类型
- 控制流程
- 文件比较
- 自动化最佳实践
- 工作流设计
- 用户界面自动化
- 项目组织
- 自动化生命周期
- 重用用户界面组件的方法
- 源代码控件集成
- 调试
- 日志记录
- 诊断工具
- 工作流分析器
- 变量
- 参数
- 导入的命名空间
- 编码自动化
- 基于触发器的 Attended 自动化
- 录制
- 用户界面元素
- 选取器
- 对象存储库
- 数据抓取
- 图像与文本自动化
- Citrix Technologies Automation
- RDP 自动化
- VMware Horizon 自动化
- Salesforce 自动化
- SAP 自动化
- macOS 用户界面自动化
- ScreenScrapeJavaSupport 工具
- Webdriver 协议
- 扩展程序
- 测试套件 - Studio
- 故障排除
自动化生命周期
决定采用有人值守机器人和无人值守机器人的自动化,这是影响开发人员构建代码方式的第一个重要决策,因为一般的运行框架(机器人触发、交互、异常处理)有所不同。之后切换到另一种类型的机器人可能会很麻烦。
对于时间紧迫的、由人触发的实时流程(比如在呼叫中心),有人值守机器人与人类协同工作可能是唯一选择。
但是,并不是所有需要人工输入的流程都应该与有人值守机器人一起运行。如果在这个过程中,某个纯粹的判断性的决定(不是基于规则的)是无法避免的,那么可以评估某个流程是否变化,比如当第一个子流程的输出成为第二个子流程的输入时,就像将更大的流程分割成两个较小的子流程一样。例如,验证/修改第一个子流程的输出,这两个子流程都可以自动触发并在无人值守的情况下运行。
典型的情况是,在流程中某个地方需要手动步骤,例如检查凭单的非结构化注释部分,并在此基础上将凭单分配给某些类别。
一般来说,使用无人值守机器人可以确保更有效地使用机器人负载和更高的 ROI,更好地管理和追踪机器人的能力。
但是,这些计算应考虑到各个方面,例如,有人值守机器人通常只能在员工的正常工作时间内运行,或者在执行完成之前,会一直占用计算机或用户。输入类型、事务量、时间限制、可供使用的机器人数量等也在此决策中发挥作用。
流程文档指导开发者的工作,并在跟踪请求和应用程序维护方面提供帮助。当然,可能还有许多其他技术文档,但其中一个对于顺利实施至关重要,即开发规格文档 (DSD)。
开发规范文件应包含自动化流程细节,并侧重于两大类别:运行时指南和开发详细信息。
运行时指南应该包含一个高级运行时图,以及机器人功能的详细信息,例如子流程、计划、配置设置、输入文件、输出文件、临时文件和执行的操作。应指定有关主流程的其他详细信息,例如先决条件、自动和手动错误处理、故障情况下的流程恢复、Orchestrator 的使用、日志记录和报告、凭据管理以及与安全或功能相关的任何其他相关信息。
“开发详细信息”应该包含有关正在使用的包、开发环境、日志记录级别、源代码存储库和版本控制、工作流组件及其描述和参数列表的列表、可重用组件列表、工作流调用树、定义的自定义日志和日志字段、流程图的相关快照、后台与前台自动化的级别,以及任何其他相关或未完成的开发项目。
RunAllTests.xaml
文件,开发者可以自动测试包含大量 .xaml
文件的序列,从而能够尝试组件之间的小型集成并运行压力测试。每次测试结束时都会生成一份报告。通常,此类测试应在办公时间以外的测试环境中执行,以优化开发者的时间。
推荐的 UiPath 架构包括开发和测试环境,这些环境允许在活动生产系统之外测试流程。
有时,应用程序在开发、测试或生产环境中呈现出不同的外观或行为,因此必须采取额外的措施,以净化选取器,甚至有条件地执行某些活动。
UiPath.config
文件或 Orchestrator 资产可切换当前环境的标志或设置。在与活动应用程序交互之前,可以检查测试模式参数(布尔值)。这可以作为资产(或参数)输入来接收。当该参数设置为 True 时,在调试和集成测试期间,它遵循测试路线,不会完全执行该案例。例如,测试修补程序可以跳过发送通知、跳过“确定”或“保存”按钮,而是按下“取消”或“关闭”按钮。当该参数设置为 False 时,则遵循正常的生产模式路线。
这允许您进行修改,并在直接在活动系统中生效的流程中测试这些修改。
有多种设计架构和发布流程的方法,考虑基础设施设置,请关注角色分离等因素。
在这个提议的模型中,UiPath 开发者可以构建他们的项目,并在 Orchestrator 的开发环境中对其进行测试。他们可以将项目签入到由版本控制系统 (VCS)(例如 GIT、SVN 或 TFS)管理的驱动器中。
发布包并将其用于测试和生产环境是不同团队的工作,例如 IT。
UiPath.Orchestrator.dll.config
文件中的 Storage.Location 值,Orchestrator 上的部署路径已从默认路径更改为由 VCS 管理的文件夹。
该模型还包含一个可重用组件的存储库。
下面是逐步进行的项目发布流程:
- 开发者构建流程,在本地测试和调试某一部分 (Studio)。
- 自动化开发完成后,流程就会发布到开发 Orchestrator,并再次进行端到端的测试。
- 项目文件夹将提交(而不是打包)到“主库”文件夹(在 VCS 上)。
- IT/RPA 运营团队为 QA 创建项目包。这一步旨在作为额外的安全措施:在打包并由机器人运行之前(由不同的实体)检查自动化源代码,例如,打包后的流程存储在 VCS 上的流程包 (QA) 文件夹中,流程将从该文件夹部署到 QA 机器人并执行。
- 如果在测试过程中发现任何问题,则重复上述步骤。
- 通过了所有 QA 测试后,包就会被推送到生产环境中 - 流程包(生产)。
- 当流程上线时,流程包将部署到生产机器人并执行。
可重用内容会作为 UiPath 代码(可重用代码库)和调用(调用存储库),单独创建和部署而成。
.xaml
文件,其中包含用于自动化常见流程的活动,例如“登录 SAP”:
调用表示仅由上面提到的代码工作流的一个调用活动组成的工作流。
Studio 开发人员的“代码片段”面板应该指向这个“调用”存储库,以便能够轻松访问可重用内容(拖放)。
负责维护可重用内容(例如,由于流程更改)的本地设计机构使用代码来更新工作流(例如,由于流程中的更改)。调用将保持不变。
相对于直接使用源代码库,这种方法的优点是:当对可重用组件进行更改时,所有正在运行的项目也会反映这一更改,因为它们只包含更改后的工作流的调用。
使用“日志消息”活动来追踪正在运行的流程的演变对于监视、诊断和调试流程来说必不可少。消息应提供所有相关信息以准确识别情况,包括事务 ID 和状态。
应使用日志记录:
- 每个工作流的开始和结束;
- 当数据来自外部来源时;
- 每次在最高级别捕获异常。
.nlog
文件中。
自定义日志字段
message
、timestamp
、level
、processName
、fileName
和机器人的 Windows 身份。日志字段是持久的,因此如果我们不需要用标签来标记所有消息,则应该在日志记录之后立即使用“删除日志字段”活动来删除字段。不要使用已经存在的字段名。第一次添加字段时,请务必指定适当类型的参数。这就是 Elasticsearch 对字段编制索引的方式。