Robocorp+Robot Framework学习记录【初学者课程:一级课程】

阅读: 评论:0

Robocorp+Robot Framework学习记录【初学者课程:一级课程】

Robocorp+Robot Framework学习记录【初学者课程:一级课程】

以下内容均来自:/?tab=2#getting-started。通过官网的学习和本地实际安装使用体验而来,本文仅记录学习过程。

Robot Framework介绍

Robot Framework 是一个通用的开源自动化框架。它可用于测试自动化和机器人过程自动化 (RPA)。

Robot Framework环境配置及安装

具体请见:Win10环境下安装pytho、pip与Robot Framework

学习过程与等级划分

官方认为Robot Frameword学习分为三个等级:
技术证书(需要编码):
证书一级:初学者课程(完成时间约 2 小时)
二级证书:搭建机器人(完成时间:1-2天)
三级证书:工作数据管理(完成时间:~3 小时)

配置环境、学习Robot结构、了解启动、查看日志

创建账户Robocorp 帐户

注册一个 Robocorp 帐户(通过邮箱直接注册,后面根据自己实际情况填写一些信息)

安装Visual Studio Code

官网推荐使用 “Visual Studio Code”:
从官网安装Visual Studio Code:/

在VS Code中安装插件Robocorp Code和Robot Framework Language Server

打开按F1,输入Extensions: Install Extensions

搜索Robocorp CodeRobot Framework Language Server。直接下载安装

创建机器人Robot 框架

按下快捷键(Ctrl+Shift+P),并输入:Robocorp: Create Robot.

第一次使用Robot会有这个弹框,这个是windows系统下默认不允许长文件夹名,开发YES即可

我提一次构建时出现错误“Unable to activate Robocorp Code extension because python executable from RCC environment was not provided.
这个问题的一般原因是因为网络,使用VPN后构建就没有问题了


打开VPN,重启VS Code,再次构建就成功了。之后如下图所示就创建好了Robot,继续选择“Standard Robot Framework template”。

继续选择“Use workspace folder

继续选择"Creat Robot Anyway",就完成创建了.
如下图所示,就说明你创建框架成功了。

查看 Robot 结构

这是一个最小的Robot结构
如果您的机器人小而简单,并且没有很多库或任务,那么您会以非常小的结构过得很好。


要使 robot.yaml有效,它只有两个强制性部分:
至少定义了一项任务,并且必须具有commandshell定义robotTaskName
必须定义工件输出路径。

使用 conda 进行环境控制

Conda 提供工具来创建可以使用不同版本的隔离环境,例如 PythonRobot Framework 和大量库。Conda 还提供了无需安装任何操作系统即可“安装”这类东西的工具。这也可以保护运行的实际机器免受污染环境变量等的影响。
示例:拥有一个需要 Python v2.7 和另一个需要 Python 3.8 的机器人可能会很麻烦,因为 Windows PATH 变量将提供最后安装的那个。
在“机器人模板”中可以看到 conda 的使用方式已内置到 Robocorp 工具中。环境在conda.yaml文件中定义。
如果机器人包含conda.yaml文件,则根据给定的配置创建环境。
您可以使用该conda.yaml文件将 conda/pip 包添加到您的运行环境。通过 RCCVS CodeRobocorp Workforce Agent 在运行时都使用此配置,无需任何额外步骤。

启动Robot

在安装官方插件之后,conda会对VS上的机器人进行环境上的隔离,我使用的是默认的环境配置。第一次启动可能需要开启VPN下载东西否则报错。

启动方式一(手动按钮)

点击VS左边最下方的小猴子按钮,然后再机器人文件路径下,Run all task 右边点击播放键

启动方式二(命令启动)

Shift-Command-P(macOS) 或Ctrl+Shift+P(Windows) 打开命令面板。
键入run robot。按Enter运行Robocorp: Run Robot命令。

成功启动

查看Task日志

运行成功后,会在本地创建 ”output“ 文件夹,文件夹内有 ”log.html“。可以用任何浏览器打开查看


Robot机器人解析

主要是“设置、任务和关键字 ”组成了大部分的 Robot
我创建的简单机器人包括,SettingsTasks 两部分
Settings 部分通常包含文档,可能还有一些库,以及对其他文件的引用。
Tasks 部分定义了机器人的任务。这个机器人有一个任务(它可能有很多)。这个任务的名称是Minimal task。


机器人语法是人类可读的!
带有 Robocorp Code 扩展的 VS Code 提供了创建机器人所需的一切。
您可以通过安装扩展来向 VS Code 添加功能。
为了完成任务,机器人调用关键字。如果您熟悉编程,可以将关键字视为函数。关键字为机器人提供了特定的技能。

创建一个打开浏览器的Robot

配置记录(自定义)

*** Settings ***
Documentation Insert the sales data for the week and export it as a PDF.

定义Task(自定义)

定义一个行为:“Open the intranet website

在"Tasks"中定义,注意缩进

因为Robot还不认识你写的任务“Open the intranet website”,所以要声明一个 “Keywords”

添加依赖-RPA.Browser.Selenium(Open Available Browser)

点击"Keywords"下方灰色字体“Load in interactive Console”,会弹出右边窗口,在 》标记处可搜索需要的Library。

搜索完后,顶部会出现如下内容Library______RPA.Browser.Selenium,粘贴到"Settings"里即可,注意缩进

使用库中的关键字-open Available Browser

open Available Browser 写在,keywords定义的行为下,注意缩进

机器人现状

到目前为止代码如下所示,可直接粘贴替换 (包含SettinsTasksKeywords)

*** Settings ***
Documentation     Insert the sales data for the week and export it as a PDF.
Library           RPA.Browser.Selenium*** Tasks ***
Insert the sales data for the week and export it as a PDFOpen the intranet website*** Keywords ***
Open the intranet websiteOpen Available Browser    /

机器人调试可能出现的问题

如果在调试的过程中,出现如下图红框中所存在的问题:BrowserNotFoundError: Failed to start a browser: - Chrome: ('Connection aborted.', ConnectionResetError(10054, '远程主机强迫关闭了一个现有的连接。', None, 10054, None)) 。
说明:你的ChromeDriver版本和Chrome版本不兼容,下载和Chrome同版本的ChromeDriver并放在Robot同目录下。

这个解决方案说的很详细:.html

如何保持Robot浏览器一直打开

通常机器人打开了 Web 浏览器,导航到给定的 URL,然后立即关闭了浏览器。如果你的ChromeChromeDriver版本相同,就不是闪退。而是机器人自己关闭了网页。
浏览器的自动关闭是RPA.Browser.Selenium库的默认行为。原因是防止机器人在完成后留下不必要的浏览器进程。

在开发机器人时,让浏览器保持打开状态通常很有用,这样就可以继续自动化流程的下一部分。交互式控制台是一种以小步骤实现机器人并保持浏览器打开的好方法。
从命令面板运行机器人时,如果您想在任务完成后保持浏览器打开,您可以像这样修改库导入(添加auto_close=${FALSE}参数):

Library           RPA.Browser.Selenium    auto_close=${FALSE}

升级机器人:登录内网

查找表单域

登录Web的重点是学习如何查看表单域。

网页是用HTML(超文本标记语言)编写的。它定义了 Web 内容的含义和结构。RobotSpareBin 内部网也是使用 HTML 构建的。要从 HTML 网页中查找表单、字段和其他元素,您的机器人需要知道它们的定位器(有时也称为选择器)。将定位器视为元素的街道地址,例如 RobotSpareBin 内网登录页面上的用户名字段。如果您愿意,您可以在这篇专门的文章中更深入地了解如何在 Web 应用程序中查找界面元素以及定位器的概念。

在网页 / 中,可以查找需要填写地方的元素名称:
用户名:username。 密码:password

<input type="text" id="username" name="username" required="" class="form-control"/>

使用输入关键字

只需要在上一个机器人中,添加“Task”和“Keywords”就可以实现对网页的登录。
关键字“ Input Text”、“Input Password”、 “Submit Form”都是库”RPA.Browser.Selenium“里的,不用另外引用依赖。

*** Settings ***
Documentation     Insert the sales data for the week and export it as a PDF.
Library           RPA.Browser.Selenium    auto_close=${FALSE}*** Tasks ***
Insert the sales data for the week and export it as a PDFOpen the intranet websiteLog in*** Keywords ***
Open the intranet websiteOpen Available Browser     inInput Text    username    mariaInput Password    password    thoushallnotpassSubmit Form

机器人现状

机器人现在长这个样子:

升级机器人:填写表单

上一次机器人已经成功登录内网,能看见如下表格。

学习查找元素和区域

这是供参考的表单 HTML 标记(这是 Web 浏览器在为您呈现漂亮的网站之前看到的内容):

<form id="sales-form"><div class="form-group"><label for="firstname">First name</label><input type="text" id="firstname" name="firstname" required="" class="form-control" /></div><div class="form-group"><label for="lastname

本文发布于:2024-01-30 14:52:59,感谢您对本站的认可!

本文链接:https://www.4u4v.net/it/170659758120799.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:课程   初学者   Robocorp   Robot   Framework
留言与评论(共有 0 条评论)
   
验证码:

Copyright ©2019-2022 Comsenz Inc.Powered by ©

网站地图1 网站地图2 网站地图3 网站地图4 网站地图5 网站地图6 网站地图7 网站地图8 网站地图9 网站地图10 网站地图11 网站地图12 网站地图13 网站地图14 网站地图15 网站地图16 网站地图17 网站地图18 网站地图19 网站地图20 网站地图21 网站地图22/a> 网站地图23