Robot Framework09-RF扩展库之SeleniumLibrary常用关键字

本篇主要对RF扩展库之SeleniumLibrary常用关键字进行展开讲解,主要包括“打开/关闭浏览器,浏览器最大化,获取/设置浏览器窗口宽高,文本输入,点击元素,点击按钮,隐式等待,等待元素出现,获取title,获取text,获取元素属性值,cookie处理等关键字基本用法”。希望感兴趣的小伙伴可以坚持看下去同时欢迎提出宝贵的意见让我们一起进步!

01:本节内容介绍
SeleniumLibrary关键字思维导图.png
02:open browser

1)关键字含义:打开浏览器并且访问指定的URL

2)关键字参数:url, browser=firefox, alias=None, remote_url=False, desired_capabilities=None, ff_profile_dir=None, options=None, service_log_path=None

3)注意事项:

  • 要想通过不同的浏览打开 URL 地址,一定要安装浏览器相对应的驱动。
  • 如果不设置浏览器,默认打开 Firefox
*** Settings ***
Library  SeleniumLibrary
*** Test Cases ***
case01:
    open browser        http://www.baidu.com      chrome
03:close browser

1)关键字含义:关闭当前的浏览器

2)关键字参数:无参数

*** Settings ***
Library  SeleniumLibrary
*** Test Cases ***
case02:
    open browser        http://www.baidu.com      chrome
    close browser
04:Maximize Browser Window

1)关键字含义:浏览器最大化

2)关键字参数:无参数

*** Settings ***
Library  SeleniumLibrary
*** Test Cases ***
case03:
    open browser        http://www.baidu.com      chrome
    Maximize Browser Window
05:get window size

1)关键字含义:获取打开浏览器的宽度和高度,以像素为单位

2)关键字参数:inner=False

*** Settings ***
Library  SeleniumLibrary
*** Test Cases ***
case04:
    open browser       http://www.baidu.com      chrome
    ${width}    ${height}    get window size
    log to console   宽度为:${width}
    log to console   高度为:${height}
06:set window size

1)关键字含义:设置打开浏览器的宽度和高度,以像素为单位

2)关键字参数:width, height, inner=False

*** Settings ***
Library  SeleniumLibrary
*** Test Cases ***
case05:
    open browser        http://www.baidu.com      chrome
    set window size  500    600
07:input text

1)关键字含义:向文本框内输入内容

2)关键字参数:text, action=ACCEPT, timeout=None

3)向文本框输入内容,需要先定位文本框元素

*** Settings ***
Library  SeleniumLibrary
*** Test Cases ***
case06:
    open browser        http://www.baidu.com      chrome
    input text          id=kw                     python
08:Click Button

1)关键字含义:点击页面上的按钮

2)关键字参数:locator, modifier=False

3)想点击按钮,需要先定位按钮元素

*** Settings ***
Library  SeleniumLibrary
*** Test Cases ***
case07:
    open browser        http://www.baidu.com      chrome
    click button        id=su
09: Click Element

1)关键字含义:点击页面上的元素,单击任何可以点击按钮、文字/图片连接、复选框、单选框、甚至是下拉框等

2)关键字参数:locator, modifier=False

3)想点击元素,需要先定位元素

*** Settings ***
Library  SeleniumLibrary
*** Test Cases ***
case08:
    open browser        http://www.baidu.com      chrome
    Click Element        id=su
10:Set Selenium Implicit Wait

1)关键字含义:设置Selenium使用的隐式等待值

2)关键字参数:value

*** Settings ***
Library  SeleniumLibrary
*** Test Cases ***
case09:
    open browser        http://www.baidu.com      chrome
    set selenium implicit wait         5
11:Wait Until Page Contains Element

1)关键字含义:等待页面上的元素显示出来。如果在元素出现之前超时则失败

2)关键字参数:locator, timeout=None, error=None

*** Settings ***
Library  SeleniumLibrary
*** Test Cases ***
case10:
    open browser                        http://www.baidu.com      chrome
    set selenium implicit wait          5
    input text                          id=kw       python
    click button                        id=su
    Wait Until Page Contains Element    id=1    0.001   元素未找到
12:get title

1)关键字含义:获得当前浏览器窗口的title信息

2)关键字参数:

*** Settings ***
Library  SeleniumLibrary
*** Test Cases ***
case11:
    open browser        http://www.baidu.com      chrome
    set selenium implicit wait         5
    ${title}=  get title
    log to console  ${title}
    close browser
13:get text

1)关键字含义:用于获取元素的文本信息

2)关键字参数:locator

*** Settings ***
Library  SeleniumLibrary
*** Test Cases ***
case12:
    open browser        http://www.baidu.com      chrome
    set browser implicit wait       5
    input text                      id=kw         python\n
    ${firstRet}   get text          id=1
    log to console   ${firstRet}
14:Get Element Attribute

1)关键字含义:用于获取元素的属性值

2)关键字参数:locator, attribute

3)想获取元素属性值,需要先定位元素

*** Settings ***
Library  SeleniumLibrary
*** Test Cases ***
case13:
    open browser        http://www.baidu.com      chrome
     set browser implicit wait           5
     #获取元素id=kw的class属性
     ${class}   get element attribute    id=kw     class
     log to console   ${class}
15:get cookies

1)关键字含义:获得当前浏览器的所有 cookie

2)关键字参数:as_dict=False

*** Settings ***
Library  SeleniumLibrary
*** Test Cases ***
case14:
    open browser        http://www.baidu.com      chrome
    ${Cookie_value}    get cookies
    log to console  ${Cookie_value}

推荐阅读更多精彩内容

  • 问答题47 /72 常见浏览器兼容性问题与解决方案? 参考答案 (1)浏览器兼容问题一:不同浏览器的标签默认的外补...
    _Yfling阅读 11,596评论 1 91
  • 大家对selenium这个自动化测试工具一定不陌生,关于selenium就不多说啦,最近项目要使用robotfra...
    测试猴阅读 2,389评论 0 2
  • 关键字是RF的核心它提供了用例执行的能力,RF用例之所以可以执行起来全都靠关键字。本篇主要对BuiltIn库常用关...
    筱媛媛阅读 1,662评论 2 16
  • Z先生昨晚微信跟我说,我们只是普通朋友关系,心里觉得真的被女神说中了,这是最坏的结果了。我是想歪了,人家约我吃饭,...
    陈pp阅读 92评论 0 0
  • 今天是去雁荡山旅游的第二天。早上醒来就听到同学们在讲话。亲切的声音进入耳里,感到全身舒畅,今天要去做哪些活动呢? ...
    Bunny厉瑞扬阅读 95评论 0 0