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

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

  1. Robot Framework自动化测试三(selenium API)

    Robot  Framework  Selenium  API 说明: 此文档只是将最常用的UI 操作列出.更多方法请查找selenium2Library 关键字库. 一.浏览器驱动 通过不同的浏览器 ...

  2. Robot Framework自动化测试(三)--- 封装系统关键字

    之前对robotframework-ride了解的不多,后来知道了引入Selenium2Lirary库后可以做web UI自动化测试,但发现和python没啥关系,今天学习了封装系统关键字算是和pyt ...

  3. Robot Framework自动化测试的应用

    Robot Framework自动化测试的应用(一) 最近尝试用Robot Framework代替之前全部采用python实现测试case,开始对Robot Framework进行些了解学习. 1. ...

  4. Robot Framework自动化测试框架核心指南-如何使用Java编写自定义的RobotFramework Lib

    如何使用Java编写自定义的RobotFramework Lib 本文包括2个章节 1. Robot Frdamwork中如何调用java Lib库 2.使用 java编写自定义的Lib 本文作者为: ...

  5. Robot Framework自动化测试框架核心指南-如何做好自动化测试平台框架的设计

    自动化测试如果需要能高效快速的支撑软件项目的测试,项目的快速迭代以及上线,除了以上我们介绍的需要许多的Lib来支持以及需要高效的去编写自动化测试案例外,还需要一个好的自动化测试框架平台来支撑我们的自动 ...

  6. Robot Framework自动化测试环境准备(一)

    Robot framework是诺西(NSN)开源的一套自动化测试工具,在通信设备自动化测试中很实用,它基于Python开发,主要模拟NMS网管配置数据到网元NODE,并读取配置看配置是否生效. == ...

  7. Robot Framework 自动化测试

    Robot Framework 自动化测试 RIDE 是 Robot Framework 测试数据的编辑器.它使测试用例的创建.运行.测试项目的组织可以在图形界面下完成. 通过 RIDE 去学习和使用 ...

  8. Robot Framework 自动化测试 Selenium2Library 库 用法

    Robot Framework自动化测试Selenium2Library库详细用法 一.浏览器驱动   通过不同的浏览器执行脚本.   Open Browser Htpp://www.xxx.com ...

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

    序 关于自动化测试的工具和框架其实有很多.自动化测试在测试IT行业中扮演着越来越重要的角色,不管是在传统的IT行业还是高速发展的互联网行业或是如今的大数据和大热的人工智能领域,都离不开测试,也更加离不 ...

随机推荐

  1. DataGridViewComboBoxColumn值无效

    值无效,可能是你下拉框选项,没有这样的值,而你却设置这个值. dataGridView1.Rows[i].Cells[].Value = "选项一"; 解决方法就是在窗体的构造函数 ...

  2. aehyok.com的成长之路一——开篇

    前言   不得不说最近三个月都没更新博客了,除了6月初的一篇博客外,今天的这一篇算是这三个月里发表的第二篇博客了.不过本人几乎每天都在博客园里刷来刷去,看大家发表的博文,从中汲取营养.确实博客园也可以 ...

  3. C#根据日期范围过滤IQueryable<T>集合

    需要扩展IQueryable<T>,参数包括一个DateTime类型的属性.开始日期.截止日期. public static class MyExtension { public stat ...

  4. spring 4.2.0后jdbcTemplate中不用queryForLong了(之系统升级发现)

    在spring 3.2.2之后,jdbcTemplate.queryForInt已经被取消了! 原来是这样写的: String sql = "SELECT count(*) FROM USE ...

  5. ubuntu 16.04 vnc server

    安装方法 https://help.ubuntu.com/community/VNC/Servers#vino 系统默认自带的,通过搜索Remote Desktop来找到它 配置好之后,设定一下密码 ...

  6. MySQL 错误

    (1) Ignoring query to other database D:\Program Files\MySQL\MySQL Server 5.6\bin>mysql -Uroot 原因是 ...

  7. Navi.Soft30.产品.Net对象查看器.操作手册

    1系统简介 1.1功能简述 在软件开发过程中,我们会编写各种类以及创建类的属性,方法,事件等.特别是第三方控件或组件,刚拿到手时,若没有完善的开发文档,很难下手.这时,若是可以查看这些DLL的成员对象 ...

  8. SQL Server 2008|2012 阻止保存要求重新创建表的更改

    不是很理解为什么在SQL Server 2008及以后的版本中会加入阻止保存要求重新创建表的更改这个选项.太麻烦了,每次修改表结构的时候会被"阻止".很不方便. 问题描述: SQL ...

  9. [SQL SERVER 2005]数据库差异备份及还原

    因为之前遇到还原差异备份,最开始遇到SQLServer报错:”无法还原日志备份或差异备份,因为没有文件可用于前滚“.查阅很多资料后,终于得到解决.收集整理成这篇随笔. 问题原因:出现这种错误绝大多数是 ...

  10. Solved: Qt Library LNK 2001 staticMetaObject error

          在链接Qt的库,比如QtGui4.lib,我这里是在链接QtSolutions_PropertyBrowser-head.lib的时候出现的链接错误.大概是说一个"XXXX::s ...