Robot Framework ---Selenium API
一、浏览器驱动
通过不同的浏览器执行脚本。
Open Browser |
Htpp://www.xxx.com |
chrome |
浏览器对应的关键字:
firefox |
FireFox |
ff |
|
internetexplorer |
Internet Explorer |
ie |
|
googlechrome |
Google Chrome |
gc |
|
chrome |
|
opera |
Opera |
phantomjs |
PhantomJS |
htmlunit |
HTMLUnit |
htmlunitwithjs |
HTMLUnit with Javascipt support |
android |
Android |
iphone |
Iphone |
safari |
Safari |
备注:
要想通过不同的浏览打开URL地址,一定要安装浏览器相对应的驱动。如chrome 的驱动:
chromedriver.exe 等。
浏览器默认为空时启动FireFox。
二、关闭浏览器
关闭浏览器
Close Browser |
关闭当前的浏览器。
关闭所有浏览器
Close All Browsers |
关闭所有打开的浏览器和浏览器缓存重置。
三、浏览器最大化
Maximize Browser Window |
使当前打开的浏览器全屏。
四、设置浏览器宽、高
Get Window Size |
800 |
600 |
以像素为单位,第一个参数800表示宽度,第二个参数600表示高度。
五、文本输入
Input Text |
Xpath=//* [@] |
输入信息 |
Xpath=//* [@] :表示元素定位,定位文本输入框。
六、点击元素
Click Element |
Xpath=//* [@] |
Xpath=//* [@] :表示元素定位,定位点击的元素。
七、点击按钮
Click Button |
Xpath=//* [@] |
Xpath=//* [@] :表示元素定位,定位点击的按钮。
八、注释
注释1:
Comment |
注释说明 |
注释2:
# 注释说明 |
除了使用Comment 关键字进行注释外,Robot framework框架是基于python语言开发的,所以提供了python语言的注释“#”方式。
九、固定时间休眠
Sleep |
42 |
|
Sleep |
1.5 |
|
Sleep |
2 minutes 10 seconds |
Sleep表示执行到当前行固定休眠多长时间,以“秒”为单位。
42表示42秒;
1.5 表示1.5秒;
2 minutes 10 seconds 表示2分10秒。
十、等待元素出现在当前页面
Wait Until Page Contains Element |
Xpath=//* [@] |
42 |
error |
Xpath=//* [@] :表示元素定位,这里定位出现的元素
42 : 表示最长等待时间。
Error : 表示错误提示,自定义错误提示,如:“元素不能正常显示”
十一、获取title
Get Title |
获得当前浏览器窗口的title 信息。
这里只获取title 是没有意义的,我们通常会将获取的title 传递给一个变量,然后与预期结果进行比较。从而判断当前脚本执行成功。
十二、获取文本信息
Get Text |
Xpath=//* [@] |
Xpath=//* [@] : 定位文本信息的元素。
十三、获取元素属性值
Get Element Attribute |
id=kw@name |
id=kw@name : id=kw 表示定位的元素。@nam 获取这个元素的name属性值。
十四、cookie处理
获取cookie
get cookies |
获得当前浏览器的所有cookie 。
获得cookie值
get cookie value |
Key_name |
Key_name : key_name 表示一对cookie中key的name 。
删除cookie
delete cookie |
Key_name |
删除key为name 的cookie信息。
删除所有cookies
delete all cookies |
删除当前浏览器的所有cookie。
添加cookie
add cookie |
Key_name |
Value_name |
添加一对cooke (key:value)
十五、声明变量
${a} |
Set Variable |
hello |
定义变量a为hello。
${a} |
${b}= |
Set Variable |
hello |
world |
定义变量a为hello ,b为world 。
十六、日志(输出)
${a} |
Set Variable |
Hello World |
log |
${a} |
在测试报告中输出a变量的值hello word。
十七、获得浏览器窗口宽、高
${width} |
${height} |
get window size |
log |
${width} |
|
log |
${height} |
获得浏览浏览器窗口宽、高,通过log 将宽高,打印到报告中。
十八、验证
open browser |
http://www.baidu.com |
chrome |
${title} |
Get Title |
|
should contain |
${title} |
百度一下,你就知道 |
Open Browser 通过chrome打开百度首页。
Get Title 获得浏览器窗口的titile ,并赋值给变量${title}
Should Contain 比较${title}是否等于“百度一下,你就知道”。
如果item1 不包含 item2 一次或多次,那么失败。
十九、表单嵌套
Select Frame |
Xpath=//* [@] |
|
Unselect Frame |
Select Frame 进入表单,Xpath=//* [@] 表示定位要进入的表单。
Unselect Frame 退出表单。
二十、下拉框选择
Unselect From List By Value |
Xpath=//* [@] |
vlaue |
Xpath=//* [@] 定位下拉框;
Vlaue 选择下拉框里的属性值。
二十一、If分支语句
${a} |
Set variable |
2 |
||
${b} |
Set variable |
5 |
||
run keyword if |
${a}>=1 |
log |
a大于1 |
|
... |
ELSE IF |
${b}<=5 |
log |
b小于等于5 |
... |
ELSE |
log |
上面两个条件都不满足 |
首先定义两个变量a ,b 分别为 2 和5 。
If 判断 a 大于等于1 ,满足条件log 输出 “a大于1 ”;
不满足上面的条件,接着else if 判断b小于等于5 ,满足条件log 输出 “b小于等于5”;
上面两个条件都不满足,else log输出“上面两个条件都不满足”。
备注:注意sele if 和else前面的三个点点点(...)
二十二、for 循环语句
循环1
:FOR |
${i} |
in range |
10 |
log |
${i} |
查看结果:
循环变量i 从0 到9 循环10次。
循环2
@{a} |
create list |
aaa |
bbb |
:FOR |
${i} |
in |
@{a} |
log |
${i} |
@{a} 定义为一个字符串列表。
通过in 可遍历非整型(in range)
说明:
Log 、if 分支,for 循环并非selenium关键字库的提供的方法,是由BuiltIn包提供。
Robot Framework ---Selenium API的更多相关文章
- Robot Framework + Selenium library + IEDriver环境搭建
转载:https://www.cnblogs.com/Ming8006/p/4998492.html#c.d 目录: 1 安装文件准备2 Robot框架结构3 环境搭建 3.1 安装Python ...
- 基于RFS(robot framework selenium)框架模拟POST/GET请求执行自动化接口测试
打开RIDE添加测试用例 如: Settings Library Collections Library RequestsLibrary Test Cases ...
- Robot Framework Selenium(RFS :web自动化测试神器)
Robot Framework 目录 1简介 2特性 3RIDE 1.简介: Robot Framework是一款python编写的功能自动化测试框架.具备良好的可扩展性,支持关键字驱动,可以同时测试 ...
- 解决Jenkins运行robot framework selenium脚本不打开浏览器的问题
1.总结就是,不能使用msi安装的jenkins,最好使用tomcat下的war包方式的jenkins 参考连接https://www.cnblogs.com/hotpsy/p/6907233.htm ...
- Robot framework selenium driver download
Chrome: https://sites.google.com/a/chromium.org/chromedriver/downloads http://npm.taobao.org/mirrors ...
- Robot Framework Selenium学习博客
http://blog.csdn.net/tulituqi/article/details/21888059
- Robot Framework自动化测试(三)---Selenium API
Robot Framework Selenium API 说明: 此文档只是将最常用的UI 操作列出.更多方法请查找selenium 关键字库. 一.浏览器驱动 通过不同的浏览器执行脚本. Op ...
- Robot Framework自动化测试三(selenium API)
Robot Framework Selenium API 说明: 此文档只是将最常用的UI 操作列出.更多方法请查找selenium2Library 关键字库. 一.浏览器驱动 通过不同的浏览器 ...
- Robot Framework - 3 - 测试库API
08- 创建测试库--发布测试库 ***** 测试库文档 为了便于维护,测试库文档应该从源代码中生成. Robot Framework 有自己的文档工具 libdoc.py生成 API 文档. 一个 ...
随机推荐
- 【一个比较bug free的二分写法】
lower_bound: [l, r)区间内大于等于val的第一个位置 int lower_bound(int l, int r, int val){ while(l < r){ ); if(a ...
- Python 操作 Mysql 模块
一.Python 操作 Mysql 模块的安装 linux: yum install MySQL-python window: http://files.cnblogs.com/files/wupei ...
- 移动端页面a input去除点击效果及pc端切换
1 手机端页面a button input去除点击效果以及闪屏问题 添加: a, button, input { -webkit-tap-highlight-color: rgba(255, 0, 0 ...
- hdu 4502 dp
吉哥系列故事——临时工计划 Time Limit: 3000/1000 MS (Java/Others) Memory Limit: 65535/32768 K (Java/Others)Tot ...
- ConcurrentHashMap 1.8为什么要使用CAS+Synchronized取代Segment+ReentrantLock
大家应该都知道ConcurrentHashMap在1.8的时候有了很大的改动,当然,我这里要说的改动不是指链表长度大于8就转为红黑树这种常识,我要说的是ConcurrentHashMap在1.8为什么 ...
- 【Visual Studio】Visual Studio 2010 "LNK1123: 转换到 COFF 期间失败: 文件无效或损坏" 的解决方法
1.将 项目|项目属性|配置属性|连接器|清单文件|嵌入清单 “是”改为“否”. 2.找到 C:\Windows\winsxs\x86_netfx-cvtres_for_vc_and_vb_b03f5 ...
- C#图解教程学习笔记——数据类型与数据存储
一.数据类型1. 预定义类型C#提供16种预定义类型,包括13种简单类型和3种非简单类型:(1)简单类型<1>11种数值类型: 不同长度的有符号和无符号整数类型 浮点数的float和dou ...
- 通过Java实现斗地主
功能:洗牌,发牌,对玩家手中的牌排序,看牌 package demo06; import java.util.ArrayList; import java.util.Collections; impo ...
- hdu 5056(尺取法思路题)
Boring count Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Tota ...
- Codeforces Gym101522 A. Ambiguous Dates (La Salle-Pui Ching Programming Challenge 培正喇沙編程挑戰賽 2017)
A. Ambiguous Dates There are two popular formats for representing a date: day/month/year or month/da ...