Robot Framework自动化测试Selenium2Library库详细用法

一、浏览器驱动

通过不同的浏览器执行脚本。


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


[email protected]

[email protected] : 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包提供。

时间: 2024-08-13 10:26:40

Robot Framework自动化测试Selenium2Library库详细用法的相关文章

Robot Framework自动化测试(一)---第一个脚本

最近工具中用Robot Framework框架来做自动化,所以,花时间学习了一下. =======所需环境=================== Python: https://www.python.org/ RF框架是基于python 的,所以一定要有python环境. Robot framework : https://pypi.python.org/pypi/robotframework/2.8.5 这个不是解释了,RF框架.虽然在做基于UI的自动化时,它展现出来的很像QTP,我之前也以为

Robot Framework自动化测试框架(一)

摘要: Robot Framework是一款python编写的功能自动化测试框架.具备良好的可扩展性,支持关键字驱动,可以同时测试多种类型的客户端或者接口,可以进行分布式测试执行.主要用于轮次很多的验收测试和验收测试驱动开发(ATDD). 正文: 1.环境搭建 1.1 robotframework安装:pip install robotframework 1.2 RIDE就是一个图形界面的用于创建.组织.运行测试的软件,robotframework-ride安装:pip install robo

Robot Framework自动化测试 ---视频与教程免费分享

当我第一次使用Robot Framework时,我是拒绝的.我跟老大说,我拒绝其实对于习惯了代码的自由,所以讨厌这种"填表格"式的脚本.老大说,Robot Framework使用简单,类库丰富,还可以自由开发系统关键字.那我说,你不能让我用我就用,我要先用用看.自从我用了半年多以来,duang~! 真的挺好用的.duang~! ,我相信我用完是这个样子,你们用完也是这个样子.duang~! duang~! ----今年流行"duang",我也来一段.哈哈~! Rob

Robot Framework自动化测试(二)---元素定位

说明: 不要误认为Robot framework 只是个web UI测试工具,更正确的理解Robot framework是个测试框架,之所以可以拿来做web UI层的自动化是国为我们加入了selenium2的API.比如笔者所处工作中,更多的是拿Robot framework来做数据库的接口测试,当然,需要先将相关的数据库包导入. 那么测试框架的本质是什么?个人觉得有以下几个方面. 1.比较 测试实质就是“比较”,在测试之前需要先写用例,假设经过各种操作之后会得到一个预期的结果,然后,在测试的过

Robot Framework自动化测试框架(二):WEB自动化

摘要: WEB自动化离不开selenium,当然robot framework也是一样,结合了selenium,需要安装:pip install selenium2library,习惯了编码写WEB自动化,robot framework基于关键字自动化的工具也还算可以,让测试变得更简单就好. 正文: 1.元素定位: 1.1 id或name定位 1.2 xpath定位 1.Xpath的绝对路径: Xpath = /html/body/div[1]/div[4]/div[2]/div/form/sp

三年磨一剑,robot framework 自动化测试框架核心指南,真正讲透robot framework自动化测试框架(笔者新书上架)。

序 关于自动化测试的工具和框架其实有很多.自动化测试在测试IT行业中扮演着越来越重要的角色,不管是在传统的IT行业还是高速发展的互联网行业或是如今的大数据和大热的人工智能领域,都离不开测试,也更加离不开自动化测试.自动化测试已经发展了很多年,在很多大的互联网公司里他们不但有自己的自动化测试框架,甚至基本都建立了自己的自动化测试平台或者已经对外开放使用的自动化测试云平台,也就是说自动化测试几乎已经成为一名测试工程师必须掌握的一个技能,并且随着很多自动化测试工具和框架的不断发展和完善,自动化测试也变

Robot Framework自动化测试 ---文档分享

当我第一次使用Robot Framework时,我是拒绝的.我跟老大说,我拒绝其实对于习惯了代码的自由,所以讨厌这种“填表格”式的脚本.老大说,Robot Framework使用简单,类库丰富,还可以自由开发系统关键字.那我说,你不能让我用我就用,我要先用用看.自从我用了半年多以来,duang~! 真的挺好用的.duang~! ,我相信我用完是这个样子,你们用完也是这个样子.duang~! duang~! ----今年流行“duang”,我也来一段.哈哈~! Robot Framework特点:

Robot Framework自动化测试环境部署

文档版本:v1.0 作者:令狐冲 如有问题请发邮件到:[email protected] 使用Robot Framework框架(以下简称RF)来做自动化测试. 模块化设计 1.所需环境一览表 软件 版本 发布日期 用途 官方网站 ActivePython 2.7 很早以前 RF是基于Python语言的,ActivePython其实就是在Python官方安装包上加了一些有用的组件,如pip http://www.activestate.com/activepython Robot Framewo

Robot Framework自动化测试(六)--- robotremoteserver使用

robotremoteserver 是什么? Python Remote Server for Robot Framework 下载地址:https://pypi.python.org/pypi/robotremoteserver/ robotremoteserver是一种远程库接口技术(remote library interface).其实,通过这两天的使用,我的理解它就是一个远程库的容器.这看上去有点不太好理解,我们知道当我要使用的Robot Framework的库是被安装在..\Pyth