Robot Framework自动化测试(三)---Selenium API

Robot  Framework  Selenium  API

 

说明:

   此文档只是将最常用的UI 操作列出。更多方法请查找selenium 关键字库。

 

 

 

一、浏览器驱动

 

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

 


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包提供。

 

时间: 2024-08-31 07:49:07

Robot Framework自动化测试(三)---Selenium API的相关文章

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: 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的情况下,被框在这个工具里各种不爽,当然,使用工具的好处也很多,降低了使用成本与难度:当然,在享受工具带来便利的同时也会受制于工具.对于特定的需求,工具没提供相关的Library和关键字的时候,就只能放弃了. 还好robot framework提供了 Evaluate 关键字,对于Evaluate 关键字的使用等有时间再讲.当robot framework 不能解决需求,我是直接写个.py 程序,通过

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

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

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

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

Robot Framework自动化测试(七)--- jybot模式

  虽然,很久不用关于Robot Framework框架了,但我这里应该是除了@齐涛-道长之外分享Robot Framework 相关资料比较多的地方了.所以,常常被问到一些关于该框架的问题. 虽然,我一直坚信该框架的无比强大和简单好用,并且,会越发展越来好.但是,对于习惯了直接写代码的自由,很难在回头用它,但这并不妨碍我对该框架的关注! 本篇介绍一下如何使用Robot Framework的Jybot 模式.   安装环境: ================ Python : robot fra

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

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

Robot Framework 快速入门_英文版

Copyright Nokia Siemens Networks 2008 Licensed under the Apache License, Version 2.0 Table of Contents Introduction Overview Installation Running this demo Introducing the sample application Test cases First test cases Higher-level test cases Data-dr

[原][自动化测试]Robot Framework Selenium基本使用

Robot Framework Selenium基本使用 首先要说一下,一切和Robot Framework相关的资料都可以通过官方 http://code.google.com/p/robotframework/ 查询学习. 一.工具基本安装 准备条件: 1.Python语言及库,环境变量等: a) 准备文件:python-2.7.4.amd64.msi b) 基本安装:最好保持C盘默认路径,方便后面安装 c) 基本配置:环境变量配置很简单:path中添加安装目录,默认路径的话是C:\Pyth