Robot Framework常用库和常用关键字

Robot Framework常用关键字 --- BuiltIn库(内置)

转换数字/字符串

Convert to String 、Convert to Number

验证点

Should Be Empty、Should Be Equal、Should Be True、Should Contain、Should Not Be Empty、Should Not Be Equal、Should Not Be True、Should Not Contain

循环执行

Continue For Loop、Continue For Loop If 、Exit For Loop、Exit For Loop If

运行关键字

Run Keyword、Run Keyword And Continue On Failure、Run Keyword If、Run Keywords

导入资源文件

Import Library、Import Resource、Import Variables

其它

Log、Log To Console、Sleep、Wait Until Keyword Succeeds、Get Length、Get Time、Set Variables、Get Variables


Robot Framework常用关键字 --- Selenium2库

浏览器操作

Open Browser、Switch Browser、Close Browser、Close All Browsers、Maximize Brower Window、Close Window、Get Window Titles、Select Window

点击操作

Click Button、Click Element、Click Image、Click Link

输入文本操作

Input Text、Input Password

选择/取消选择

Select Checkbox、Select Frame、Unselect Checkbox、Unselect Frame

检查点

Page Should Contain、Page Should Contain Button、Page Should Contain Image、Page Should Contain Link、Page Should Contain Textfield、Page Should Not Contain

其它

Capture Page Screenshot、Choose File、Get Location、Go Back、Go To、Reload Page


Robot Framework常用关键字 --- SSHLibrary库

Close All Connections 关闭所有打开的连接,“打开连接”返回的连接索引被重置并从“1”开始

Close Connection 关闭当前连接

Directory Should Exist 如果给定的路径不指向现有目录,则会失败。

Directory Should Not Exist 如果给定的路径指向现有目录,则会失败。

Enable Ssh Logging 使SSH协议输出日志给`logfile`,`logfile`是一个文件,是由当前的本地用户可写的路径。如果文件已经存在,它将被覆盖。注:此关键字只能在Python中,即在执行测试` PyBot `。

Execute Command 在远程计算机上执行“命令”并返回其输出,此关键字执行“命令”并在执行完成后返回。如果命令在后台启动,请使用“开始命令”。

File Should Exist 如果给定的路径不指向现有文件,则失败。

File Should Not Exist 如果给定的路径指向现有文件,则失败。

Get Connection 返回连接的信息。

此关键字不会改变连接,使用`Switch Connection`开关连接,来更改活动连接。

Get Connections 返回所有打开连接的信息。

此关键字返回与`Get Connection`获取连接,返回的对象相同的对象列表。

Get Directory 从远程计算机下载一个目录,包括它的内容到本地机器。

Get File 将文件从远程机器下载到本地机器。

List Directories In Directory 只返回目录的`List Directory`的包装器。

List Directory 返回和记录远程`path`路径,中的项,可选地用`pattern`模式,过滤。

List Files In Directory 只返回文件的`List Directory`的包装器。

Login 用给定的 `username`用户名,和 `password`口令,登录ssh服务器。

在使用此关键字之前必须打开连接。

此关键字在登录后读取、返回和记录服务器输出。如果设置了提示,则所有内容直到提示符被读取为止。否则,输出将使用“读”关键字与给定的“延迟”读取。输出使用

Login With Public Key 使用基于密钥的身份验证登录到ssh服务器。

在使用此关键字之前必须打开连接。

Open Connection 打开一个新的ssh连接到给定的 `host`主机,和 `port`端口。

新连接处于活动状态。可能存在的连接在后台打开。

注意在Jython这个关键词实际上打开一个连接,将不能立即无法访问的主机。在python上,实际的连接尝试将在调用“登录”之前完成。

Put Directory 将一个目录,包括它的内容,从本地机器上传到远程机器。

Put File 将文件从本地机器上传到远程机器。

Read 消耗并返回服务器输出上可用的所有内容。

如果给出“延迟”,该关键字将等待大量时间并再次读取输出。只要进一步读取返回更多输出或超时过期,则重复等待读循环重复。`延迟`必须在机器人框架的时间格式(例如` 5 `,` 4.5s `,` 3分钟`,` 2分钟3秒`)是在用户指南中详细解释。

这个关键字对于从服务器输出读取所有内容非常有用,从而清除它。

读取输出记录。` LogLevel `可以重写默认的日志级别。

Read Command Output 返回最近启动的命令的输出。

在使用此关键字之前,至少必须使用“开始命令”命令启动至少一个命令。

默认情况下,只返回启动命令的标准输出

Read Until 消耗并返回服务器输出,直到遇到 `expected`预期。

文本直到并包括 `expected` 预期,将被返回。

如果超时在找到匹配之前过期,则此关键字失败。

Read Until Prompt 消耗并返回服务器输出,直到找到提示。

文本向上,直到提示符返回。在使用此关键字之前必须设置提示符。

如果超时在找到匹配之前过期,则此关键字失败。

当读取先前命令的输出时,该关键字对读取单个命令的输出非常有用,该命令在其输出中不生成即时字符。

Read Until Regexp 消耗和返回服务器输出直到` regexp `发现。` regexp `可以图案或编译正则表达式对象。

文本直到并包括` regexp `将返回。

Set Client Configuration 更新当前连接的`configuration` 配置。

只有值为 `None` 否,的参数才被更新。

Set Default Configuration 更新默认的“配置”。

请注意,使用此关键字不会影响已经打开的连接。

Start Command 开始在远程计算机上执行`command`命令,并立即返回。

此关键字不返回任何内容,不等待命令执行完成。如果需要输出,则使用`Execute Command` 执行命令,代替。

此关键字不返回由`command`开始,命令生成的任何输出。

Switch Connection 通过索引或别名切换活动连接。

` index_or_alias `是连接指数(整数)或别名(一个字符串)。索引作为“打开连接”的返回值获得。或者,两个索引和别名都可以查询为“获取连接”返回的对象的属性。

此关键字返回以前活动连接的索引,可用于稍后切换回该连接。

Write 将给定的文本` `在远程机器上,添加一个换行符。

添加换行符可以配置。

Write Bare 写了`远程机器上的文本`不带换行符。

不同于`Write`写,这个关键字返回并且不消耗任何东西。

Write Until Expected Output 反复写入给定的“文本”,直到`expected` 期望,出现在服务器输出中。

此关键字不返回任何内容。


Robot Framework常用关键字 --- DatabaseLibrary库

Call Stored Procedure 采用` spname `和spparams来调用存储过程的输入。设置可选输入` sanstran `真正运行命令没有显式事务提交或回滚。

spname应该存储过程名称本身spparams [可选]是个列表被发送的参数。列表可以是一个或多个项目。

这个关键字的返回将始终是一个列表。

Check If Exists In Database 检查是否有排将由给定的输入` selectstatement `返回。如果没有结果,那么这将抛出一个断言错误。设置可选输入` sanstran `真正运行命令没有显式事务提交或回滚。

Check If Not Exists In Database 这是否定` check_if_exists_in_database `。

检查如果没有行可以通过给定的输入` selectstatement `返回。如果有任何的结果,那么这将抛出一个断言错误。设置可选输入` sanstran `真正运行命令没有显式事务提交或回滚。

Connect To Database 连接数据库,变量分开写

Connect To Database Using Custom Params 连接数据库,变量写一起

Delete All Rows From Table 删除给定表中的所有行。设置可选输入` sanstran `真正运行命令没有显式事务提交或回滚。

Description 使用输入` selectstatement `在数据库将被用来确定描述表的查询。设置可选输入` sanstran `真正运行命令没有显式事务提交或回滚。

Disconnect From Database 断开与数据库的连接。

Execute Sql Script

Execute Sql String 执行SQL命令sqlstring。有用传递参数到您的SQL。设置可选输入` sanstran `真正运行命令没有显式事务提交或回滚。

SQL命令预期由分号(“;”)分隔。

Query 使用输入` selectstatement `查询的值将作为一个元组返回列表。设置可选输入` sanstran `真正运行命令没有显式事务提交或回滚。

提示:除非你想记录的指定行的所有列的值,请指定的列名在你的SELECT语句尽可能防止任何不必要的惊喜与图式变化,很容易看到你的[ ]索引试图检索(即不是`“选择*从my_table”`,尝试`“选择ID,col_1,col_2从my_table”`)。

Row Count 使用输入`selectstatement `来查询数据库并返回查询的行数。设置可选输入` sanstran `真正运行命令没有显式事务提交或回滚。

Row Count Is O 检查是否有任何行返回从提交` selectstatement `。如果有,那么这将抛出一个断言错误。设置可选输入` sanstran `真正运行命令没有显式事务提交或回滚。

Row Count Is Equal To X 检查从` selectstatement `等于提交的值返回的行数。如果不是,那么这将抛出一个断言错误。设置可选输入` sanstran `真正运行命令没有显式事务提交或回滚。

Row Count Is Greater Than X 检查从` selectstatement `大于提交的值返回的行数。如果不是,那么这将抛出一个断言错误。设置可选输入` sanstran `真正运行命令没有显式事务提交或回滚。

Row Count Is Less Than X 检查从` selectstatement `小于值提交返回的行数。如果不是,那么这将抛出一个断言错误。设置可选输入` sanstran `真正运行命令没有显式事务提交或回滚。

Table Must Exist 检查数据库中给定的表是否存在。设置可选输入` sanstran `真正运行命令没有显式事务提交或回滚。


Robot Framework常用关键字 --- AppiumLibrary 库

一、实用函数

关键字    含义    实例    备注

Click Button    点击按钮    Click Button 注销    这里“注销”的class属性,必须是Button

Click Element    点击元素    Click Element [locator]Locator    可以是resource-id,也可以是xpath;但必须是当前页面唯一存在的;一般用该关键字可以完成所有元素点击

Click Text    点击文字    Click Text 我的    “我的”需要是当前页面唯一存在的

Input Text    在指定元素中输入文本    InputText [locator] 111111    Locator可以是resource-id,也可以是xpath

Swipe    滑动屏幕    Swipe 1000 1800 100 1800

Get Text    获取某标签内容    ${account}   Get Text  [locator]      获取内容后存储到指定变量中,从而在后续脚本中调用该内容

二、校验函数

Element Name Should Be检查元素的name属性

Element Name Should Be  [locator]  登录locator可以是resource-id,也可以是xpath

Element Should Be Enabled检查元素是否可用/可见Element Should Be Enabled  [locator] 

Page Should Contain Element检查界面包含某些元素Page Should Contain Element   [locator] 

Page Should Contain Text检查界面包含某些文字信息Page Should Contain Text  预约挂号 

Page Should Not Contain Element检查界面不包含某些元素Page Should Not Contain Element  [locator] 

Page Should Not Contain Text检查界面不包含某些文字信息Page Should Not Contain Text  预约挂号 

三、等待函数

Wait Until Page Contains等待直到界面中包含某些文字,才进行下一步Wait Until Page Contains  预约挂号默认等待时间为5s

Wait Until Page Contains Element等待直到界面中包含某些元素,才进行下一步Wait Until Page Contains Element   [locator]locator可以是resource-id,也可以是xpath

Wait Until Page Does Not Contain等待直到界面中不包含某些文字,才进行下一步Wait Until Page Does Not Contain  预约挂号 

Wait Until Page Does Not Contain Element    等待直到界面中不包含某些元素,才进行下一步    Wait Until Page Does Not Contain Element  [locator]


扩展库 

Robot Framework需要下载安装后才能使用的库,包括:

Android library:所有android自动化需要的测试库,内部使用的是Calabash Android

iOS library:所有iOS自动化需要的测试库,内部使用Calabash iOS服务

AppiumLibrary:Android和iOS测试库,内部使用的是appium

HTTP library (livetest):内部使用LiveTest工具的HTTP测试的库。

HTTP library (Requests):内部使用request工具的HTTP测试的库。

MongoDB library:使用pymongo和MongoDB交互的库。(MongoDB是一个基于分布式文件存储的数据库)

Database Library (Java):基于Java的数据库测试库。也可使用Jython和Maven central.

Database Library (Python):基于Python数据库测试库。支持任何Python解释器,包括Jython。

watir-robot:使用Watir的工具的Web测试库。

seleniumlibrary:Web测试库,内部使用比较流行的selenium工具。利用早期的selenium1.0和本身已经过时。

selenium2library:使用selenium2的Web测试库。替换了大部分老的seleniumlibrary。

selenium2library java:selenium2library的java接口

Django Library:为Django的库,一个Python Web框架。

sudslibrary:一种基于泡沫基于SOAP的Web服务的功能测试库,动态的SOAP 1.1的客户端。

Archive library:处理.zip和.tar压缩包的库。

Diff Library:比较两个文件的库。

FTP library:Robot Framework上测试和使用FTP服务的库。

SSHLibrary:通过SSH连接的在远程机器上执行命令。还支持使用SFTP进行文件传输

rammbock:通用的网络协议测试库;提供简单的方法来指定网络数据包,并检查发送和接收数据包的结果。

imagehorizonlibrary:跨平台、基于图像识别的GUI自动化纯Python库。

autoitlibrary:Windows的GUI测试库,使用AutoIt的免费工具作为驱动。

Eclipse Library:使用SWT窗口小部件测试Eclipse RCP应用程序的库。

robotframework-faker:一个服务faker的库,faker的测试数据生成器。

swinglibrary:用Swing GUI测试java应用程序库

remoteswinglibrary:使用swinglibrary库测试和连接一个java进程,尤其是java web 

start的应用。(Java Web Start 是基于 Java 技术的应用程序的一种部署解决方案,它是连接计算机和 Internet 

的便捷通道,允许用户在完全脱离 Web 的情况下运行和管理应用程序)

MQTT library:测试MQTT brokers和应用的库。



最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 151,688评论 1 330
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 64,559评论 1 273
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 101,749评论 0 226
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 42,581评论 0 191
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 50,741评论 3 271
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 39,684评论 1 192
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 31,122评论 2 292
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 29,847评论 0 182
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 33,441评论 0 228
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 29,939评论 2 232
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 31,333评论 1 242
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 27,783评论 2 236
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 32,275评论 3 220
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 25,830评论 0 8
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 26,444评论 0 180
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 34,553评论 2 249
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 34,618评论 2 249

推荐阅读更多精彩内容