Selenium Robot Framework Element Locator


Locating elements on the website under test is very important for all keywords in Selenium2Library to interact with the element. In general, finding an element on the page take an argument, locator. By default, when a locator is provided, it is matched against the key attribute of the particular element type. For example, id and name are key attribute to all elements, and locating elements is easy using just the id as a locator. 
When id or name is not present, Selenium2Library supports other strategies to locate the element. See the chart below for other strategies: 
Locator
Example
Description
identifier
Click Element | identifier=my_element
Matches by @id or @name attribute
id
Click Element | id=my_element
Matches by @id attribute
name
Click Element | name=my_element
 Matches by @name attribute
xpath
Click Element | xpath=//div[@id='my_element']
Matches with arbitrary XPath expression
dom
Click Element | dom=document.images[56]
Matches with arbitrary DOM express
link
Click Element | link=My Link
Matches anchor elements by their link text
css
Click Element | css=div.my_class
Matches by CSS selector
jquery
Click Element | jquery=div.my_class
Matches by jQuery/sizzle selector
sizzle
Click Element | sizzle=div.my_class
Matches by jQuery/sizzle selector
tag
Click Element | tag=div
Matches by HTML tag name


Robot Framework Selenium2Library Keywords


Selenium2Library is a web testing library for Robot Framework, and it runs tests in a real browser instance. It should work in most modern browsers and can be used with both Python and Jython interpreters. Before running tests that use Selenium2Library, Selenium2Library must be imported into your Robot test suite. Selenium2Library provides keywords to interact with cookies, web elements, browser windows and pages. Here is the full list of keywords in Selenium2Library.
Keyword
Arguments
Documentation
Example
Reference Web Site
Add Cookie
name, value, path=None, domain=None, secure=None, expiry=None
Adds a cookie to your current session. "name" and "value" are required, "path", "domain" and "secure" are optional
Alert Should Be Present
text=
Verifies an alert is present and dismisses it.
If text is a non-empty string, then it is also verified that the message of the alert equals to text.
Will fail if no alert is present. Note that following keywords will fail unless the alert is dismissed by this keyword or another like Get Alert Message.
Assign Id To Element
locator, id
Assigns a temporary identifier to element specified by locator.
This is mainly useful if the locator is complicated/slow XPath expression. Identifier expires when the page is reloaded.
Example:
Assign ID to Element
xpath=//div[@id="first_div"]
my id
Page Should Contain Element
my id
Capture Page Screenshot
filename=None
Takes a screenshot of the current page and embeds it into the log.
filename argument specifies the name of the file to write the screenshot into. If no filename is given, the screenshot is saved into file selenium-screenshot-<counter>.png under the directory where the Robot Framework log file is written into. The filename is also considered relative to the same directory, if it is not given in absolute format.
css can be used to modify how the screenshot is taken. By default the bakground color is changed to avoid possible problems with background leaking when the page layout is somehow broken.
Checkbox Should Be Selected
locator
Verifies checkbox identified by locator is selected/checked.
Key attributes for checkboxes are id and name.
Checkbox Should Not Be Selected
locator
Verifies checkbox identified by locator is not selected/checked.
Key attributes for checkboxes are id and name.
Choose Cancel On Next Confirmation
Cancel will be selected the next time Confirm Action is used.
Choose File
locator, file_path
Inputs the file_path into file input field found by identifier.
This keyword is most often used to input files into upload forms. The file specified with file_path must be available on the same host where the Selenium Server is running.
Example:
Choose File
my_upload_field
/home/user/files/trades.csv
Choose Ok On Next Confirmation
Undo the effect of using keywords Choose Cancel On Next Confirmation. Note that Selenium's overridden window.confirm() function will normally automatically return true, as if the user had manually clicked OK, so you shouldn't need to use this command unless for some reason you need to change your mind prior to the next confirmation. After any confirmation, Selenium will resume using the default behavior for future confirmations, automatically returning true (OK) unless/until you explicitly use Choose Cancel On Next Confirmation for each confirmation.
Note that every time a confirmation comes up, you must consume it by using a keywords such as Get Alert Message, or else the following selenium operations will fail.
Click Button
locator
Clicks a button identified by locator.
Key attributes for buttons are id, name and value. Visit the article "Selenium Robot Framework Element Locator"
Click Element
locator
Click element identified by locator.
Key attributes for arbitrary elements are id and name. Visit the article "Selenium Robot Framework Element Locator"
Click Element At Coordinates
locator, xoffset, yoffset
Click element identified by locator at x/y coordinates of the element. Cursor is moved and the center of the element and x/y coordinates are calculted from that point.
Key attributes for arbitrary elements are id and name. Visit the article "Selenium Robot Framework Element Locator"
Click Image
locator
Clicks an image found by locator.
Key attributes for images are id, src and alt. Visit the article "Selenium Robot Framework Element Locator"
Click Link
locator
Clicks a link identified by locator.
Key attributes for links are id, name, href and link text. Visit the article "Selenium Robot Framework Element Locator"
Close All Browsers
Closes all open browsers and resets the browser cache.
After this keyword new indexes returned from Open Browser keyword are reset to 1.
This keyword should be used in test or suite teardown to make sure all browsers are closed.
Close Browser
Closes the current browser.
Close Window
Closes currently opened pop-up window.
Confirm Action
Dismisses currently shown confirmation dialog and returns it's message.
By default, this keyword chooses 'OK' option from the dialog. If 'Cancel' needs to be chosen, keyword Choose Cancel On Next Confirmation must be called before the action that causes the confirmation dialog to be shown.
Examples:
Click Button
Send
# Shows a confirmation dialog
${message}=
Confirm Action
# Chooses Ok
Should Be Equal
${message}
Are your sure?
Choose Cancel On Next Confirmation
Click Button
Send
# Shows a confirmation dialog
Confirm Action
# Chooses Cancel
Create Webdriver
driver_name, alias=None, kwargs={}, **init_kwargs
Creates an instance of a WebDriver.
Like Open Browser, but allows passing arguments to a WebDriver's __init__. Open Browser is preferred over Create Webdriver when feasible.
Returns the index of this browser instance which can be used later to switch back to it. Index starts from 1 and is reset back to it when Close All Browsers keyword is used. See Switch Browser for example.
driver_name must be the exact name of a WebDriver in selenium.webdriver to use. WebDriver names include: Firefox, Chrome, Ie, Opera, Safari, PhantomJS, and Remote.
Use keyword arguments to specify the arguments you want to pass to the WebDriver's __init__. The values of the arguments are not processed in any way before being passed on. For Robot Framework < 2.8, which does not support keyword arguments, create a keyword dictionary and pass it in as argument kwargs. See the Selenium API Documentation for information about argument names and appropriate argument values.
Examples:
# use proxy for Firefox
${proxy}=
Evaluate
sys.modules['selenium.webdriver'].Proxy()
sys, selenium.webdriver
${proxy.http_proxy}=
Set Variable
localhost:8888
Create Webdriver
Firefox
proxy=${proxy}
# use a proxy for PhantomJS
${service args}=
Create List
--proxy=192.168.132.104:8888
Create Webdriver
PhantomJS
service_args=${service args}
Example for Robot Framework < 2.8:
# debug IE driver
${kwargs}=
Create Dictionary
log_level
DEBUG
log_file
%{HOMEPATH}${/}ie.log
Create Webdriver
Ie
kwargs=${kwargs}
Current Frame Contains
text, loglevel=INFO
Verifies that current frame contains text.
See Page Should Contain for explanation about loglevel argument.
Current Frame Should Not Contain
text, loglevel=INFO
Verifies that current frame contains text.
See Page Should Contain for explanation about loglevel argument.
Delete All Cookies
Deletes all cookies.
Delete Cookie
name
Deletes cookie matching name.
If the cookie is not found, nothing happens.
Double Click Element
locator
Double click element identified by locator.
Key attributes for arbitrary elements are id and name. Visit the article "Selenium Robot Framework Element Locator"
Drag And Drop
source, target
Drags element identified with source which is a locator.
Element can be moved on top of another element with target argument.
target is a locator of the element where the dragged object is dropped.
Examples:
Drag And Drop
elem1
elem2
# Move elem1 over elem2.
Drag And Drop By Offset
source, xoffset, yoffset
Drags element identified with source which is a locator.
Element will be moved by xoffset and yoffset. each of which is a negative or positive number specify the offset.
Examples:
Drag And Drop
myElem
50
-35
# Move myElem 50px right and 35px down.
Element Should Be Disabled
locator
Verifies that element identified with locator is disabled.
Key attributes for arbitrary elements are id and name. Visit the article "Selenium Robot Framework Element Locator"
Element Should Be Enabled
locator
Verifies that element identified with locator is enabled.
Key attributes for arbitrary elements are id and name. Visit the article "Selenium Robot Framework Element Locator"
Element Should Be Visible
locator, message=
Verifies that the element identified by locator is visible.
Herein, visible means that the element is logically visible, not optically visible in the current browser viewport. For example, an element that carries display:none is not logically visible, so using this keyword on that element would fail.
message can be used to override the default error message.
Key attributes for arbitrary elements are id and name. Visit the article "Selenium Robot Framework Element Locator"
Element Should Contain
locator, expected, message=
Verifies element identified by locator contains text expected.
If you wish to assert an exact (not a substring) match on the text of the element, use Element Text Should Be.
message can be used to override the default error message.
Key attributes for arbitrary elements are id and name. Visit the article "Selenium Robot Framework Element Locator"
Element Should Not Be Visible
locator, message=
Verifies that the element identified by locator is NOT visible.
This is the opposite of Element Should Be Visible.
message can be used to override the default error message.
Key attributes for arbitrary elements are id and name. Visit the article "Selenium Robot Framework Element Locator"
Element Text Should Be
locator, expected, message=
Verifies element identified by locator exactly contains text expected.
In contrast to Element Should Contain, this keyword does not try a substring match but an exact match on the element identified by locator.
message can be used to override the default error message.
Key attributes for arbitrary elements are id and name. Visit the article "Selenium Robot Framework Element Locator"
Execute Async Javascript
*code
Executes asynchronous JavaScript code.
code may contain multiple lines of code but must contain a return statement (with the value to be returned) at the end.
code may be divided into multiple cells in the test data. In that case, the parts are catenated together without adding spaces.
If code is an absolute path to an existing file, the JavaScript to execute will be read from that file. Forward slashes work as a path separator on all operating systems.
Note that, by default, the code will be executed in the context of the Selenium object itself, so this will refer to the Selenium object. Use window to refer to the window of your application, e.g. window.document.getElementById('foo').
Example:
Execute Async JavaScript
window.my_js_function('arg1', 'arg2')
Execute Async JavaScript
${CURDIR}/js_to_execute.js
Execute Javascript
*code
Executes the given JavaScript code.
code may contain multiple lines of code but must contain a return statement (with the value to be returned) at the end.
code may be divided into multiple cells in the test data. In that case, the parts are catenated together without adding spaces.
If code is an absolute path to an existing file, the JavaScript to execute will be read from that file. Forward slashes work as a path separator on all operating systems.
Note that, by default, the code will be executed in the context of the Selenium object itself, so this will refer to the Selenium object. Use window to refer to the window of your application, e.g. window.document.getElementById('foo').
Example:
Execute JavaScript
window.my_js_function('arg1', 'arg2')
Execute JavaScript
${CURDIR}/js_to_execute.js
Focus
locator
Sets focus to element identified by locator.
Frame Should Contain
locator, text, loglevel=INFO
Verifies frame identified by locator contains text.
See Page Should Contain for explanation about loglevel argument.
Key attributes for frames are id and name. Visit the article "Selenium Robot Framework Element Locator"
Get Alert Message
Returns the text of current JavaScript alert.
This keyword will fail if no alert is present. Note that following keywords will fail unless the alert is dismissed by this keyword or another like Get Alert Message.
Get All Links
Returns a list containing ids of all links found in current page.
If a link has no id, an empty string will be in the list instead.
Get Cookie Value
name
Returns value of cookie found with name.
If no cookie is found with name, this keyword fails.
Get Cookies
Returns all cookies of the current page.
Get Element Attribute
attribute_locator
Return value of element attribute.
attribute_locator consists of element locator followed by an @ sign and attribute name, for example "element_id@class".
Get Horizontal Position
locator
Returns horizontal position of element identified by locator.
The position is returned in pixels off the left side of the page, as an integer. Fails if a matching element is not found.
See also Get Vertical Position.
Get List Items
locator
Returns the values in the select list identified by locator.
Select list keywords work on both lists and combo boxes. Key attributes for select lists are id and name. Visit the article "Selenium Robot Framework Element Locator"
Get Location
Returns the current location.
Get Matching Xpath Count
xpath
Returns number of elements matching xpath
If you wish to assert the number of matching elements, use Xpath Should Match X Times.
Get Selected List Label
locator
Returns the visible label of the selected element from the select list identified by locator.
Select list keywords work on both lists and combo boxes. Key attributes for select lists are id and name. Visit the article "Selenium Robot Framework Element Locator"
Get Selected List Labels
locator
Returns the visible labels of selected elements (as a list) from the select list identified by locator.
Fails if there is no selection.
Select list keywords work on both lists and combo boxes. Key attributes for select lists are id and name. Visit the article "Selenium Robot Framework Element Locator"
Get Selected List Value
locator
Returns the value of the selected element from the select list identified by locator.
Return value is read from value attribute of the selected element.
Select list keywords work on both lists and combo boxes. Key attributes for select lists are id and name. Visit the article "Selenium Robot Framework Element Locator"
Get Selected List Values
locator
Returns the values of selected elements (as a list) from the select list identified by locator.
Fails if there is no selection.
Select list keywords work on both lists and combo boxes. Key attributes for select lists are id and name. Visit the article "Selenium Robot Framework Element Locator"
Get Selenium Implicit Wait
Gets the wait in seconds that is waited by Selenium.
See Set Selenium Implicit Wait for an explanation.
Get Selenium Speed
Gets the delay in seconds that is waited after each Selenium command.
See Set Selenium Speed for an explanation.
Get Selenium Timeout
Gets the timeout in seconds that is used by various keywords.
See Set Selenium Timeout for an explanation.
Get Source
Returns the entire html source of the current page or frame.
Get Table Cell
table_locator, row, column, loglevel=INFO
Returns the content from a table cell.
Row and column number start from 1. Header and footer rows are included in the count. This means that also cell content from header or footer rows can be obtained with this keyword.
Get Text
locator
Returns the text value of element identified by locator.Visit the article "Selenium Robot Framework Element Locator"
Get Title
Returns title of current page.
Get Value
locator
Returns the value attribute of element identified by locator.Visit the article "Selenium Robot Framework Element Locator"
Get Vertical Position
locator
Returns vertical position of element identified by locator.
The position is returned in pixels off the top of the page, as an integer. Fails if a matching element is not found.
See also Get Horizontal Position.
Get Window Identifiers
Returns and logs id attributes of all windows known to the browser.
Get Window Names
Returns and logs names of all windows known to the browser.
Get Window Size
Returns current window size as width then height.
Example:
${width}
${height}=
Get Window Size
Get Window Titles
Returns and logs titles of all windows known to the browser.
Go Back
Simulates the user clicking the "back" button on their browser.
Go To
url
Navigates the active browser instance to the provided URL.
Input Password
locator, text
Types the given password into text field identified by locator.
Difference between this keyword and Input Text is that this keyword does not log the given password. Visit the article "Selenium Robot Framework Element Locator"
Input Text
locator, text
Types the given text into text field identified by locator.Visit the article "Selenium Robot Framework Element Locator"
List Selection Should Be
locator, *items
Verifies the selection of select list identified by locator is exactly *items.
If you want to test that no option is selected, simply give no items.
Select list keywords work on both lists and combo boxes. Key attributes for select lists are id and name. Visit the article "Selenium Robot Framework Element Locator"
List Should Have No Selections
locator
Verifies select list identified by locator has no selections.
Select list keywords work on both lists and combo boxes. Key attributes for select lists are id and name. Visit the article "Selenium Robot Framework Element Locator"
Location Should Be
url
Verifies that current URL is exactly url.
Location Should Contain
expected
Verifies that current URL contains expected.
Log Location
Logs and returns the current location.
Log Source
loglevel=INFO
Logs and returns the entire html source of the current page or frame.
The loglevel argument defines the used log level. Valid log levels are WARN, INFO (default), DEBUG, TRACE and NONE (no logging).
Log Title
Logs and returns the title of current page.
Maximize Browser Window
Maximizes current browser window.
Mouse Down
locator
Simulates pressing the left mouse button on the element specified by locator.
The element is pressed without releasing the mouse button.
Key attributes for arbitrary elements are id and name. Visit the article "Selenium Robot Framework Element Locator"
See also the more specific keywords Mouse Down On Image and Mouse Down On Link.
Mouse Down On Image
locator
Simulates a mouse down event on an image.
Key attributes for images are id, src and alt. Visit the article "Selenium Robot Framework Element Locator"
Mouse Down On Link
locator
Simulates a mouse down event on a link.
Key attributes for links are id, name, href and link text. Visit the article "Selenium Robot Framework Element Locator"
Mouse Out
locator
Simulates moving mouse away from the element specified by locator.
Key attributes for arbitrary elements are id and name. Visit the article "Selenium Robot Framework Element Locator"
Mouse Over
locator
Simulates hovering mouse over the element specified by locator.
Key attributes for arbitrary elements are id and name. Visit the article "Selenium Robot Framework Element Locator"
Mouse Up
locator
Simulates releasing the left mouse button on the element specified by locator.
Key attributes for arbitrary elements are id and name. Visit the article "Selenium Robot Framework Element Locator"
Open Browser
url, browser=firefox, alias=None, remote_url=False, desired_capabilities=None, ff_profile_dir=None
Opens a new browser instance to given URL.
Returns the index of this browser instance which can be used later to switch back to it. Index starts from 1 and is reset back to it when Close All Browsers keyword is used. See Switch Browser for example.
Optional alias is an alias for the browser instance and it can be used for switching between browsers (just as index can be used). See Switch Browser for more details.
Possible values for browser are as follows:
firefox
FireFox
ff
FireFox
internetexplorer
Internet Explorer
ie
Internet Explorer
googlechrome
Google Chrome
gc
Google Chrome
chrome
Google Chrome
opera
Opera
phantomjs
PhantomJS
htmlunit
HTMLUnit
htmlunitwithjs
HTMLUnit with Javascipt support
android
Android
iphone
Iphone
safari
Safari
Optional 'ff_profile_dir' is the path to the firefox profile dir if you wish to overwrite the default.
Open Context Menu
locator
Opens context menu on element identified by locator.
Page Should Contain
text, loglevel=INFO
Verifies that current page contains text.
If this keyword fails, it automatically logs the page source using the log level specified with the optional loglevel argument. Giving NONE as level disables logging.
Page Should Contain Button
locator, message=, loglevel=INFO
Verifies button identified by locator is found from current page.
This keyword searches for buttons created with either input or button tag.
See Page Should Contain Element for explanation about message and loglevel arguments.
Key attributes for buttons are id, name and value. Visit the article "Selenium Robot Framework Element Locator"
Page Should Contain Checkbox
locator, message=, loglevel=INFO
Verifies checkbox identified by locator is found from current page.
See Page Should Contain Element for explanation about message and loglevel arguments.
Key attributes for checkboxes are id and name. Visit the article "Selenium Robot Framework Element Locator"
Page Should Contain Element
locator, message=, loglevel=INFO
Verifies element identified by locator is found on the current page.
message can be used to override default error message.
See Page Should Contain for explanation about loglevel argument.
Key attributes for arbitrary elements are id and name. Visit the article "Selenium Robot Framework Element Locator"
Page Should Contain Image
locator, message=, loglevel=INFO
Verifies image identified by locator is found from current page.
See Page Should Contain Element for explanation about message and loglevel arguments.
Key attributes for images are id, src and alt. Visit the article "Selenium Robot Framework Element Locator"
Page Should Contain Link
locator, message=, loglevel=INFO
Verifies link identified by locator is found from current page.
See Page Should Contain Element for explanation about message and loglevel arguments.
Key attributes for links are id, name, href and link text. Visit the article "Selenium Robot Framework Element Locator"
Page Should Contain List
locator, message=, loglevel=INFO
Verifies select list identified by locator is found from current page.
See Page Should Contain Element for explanation about message and loglevel arguments.
Key attributes for lists are id and name. Visit the article "Selenium Robot Framework Element Locator"
Page Should Contain Radio Button
locator, message=, loglevel=INFO
Verifies radio button identified by locator is found from current page.
See Page Should Contain Element for explanation about message and loglevel arguments.
Key attributes for radio buttons are id, name and value. Visit the article "Selenium Robot Framework Element Locator"
Page Should Contain Textfield
locator, message=, loglevel=INFO
Verifies text field identified by locator is found from current page.
See Page Should Contain Element for explanation about message and loglevel arguments.
Key attributes for text fields are id and name. Visit the article "Selenium Robot Framework Element Locator"
Page Should Not Contain
text, loglevel=INFO
Verifies the current page does not contain text.
See Page Should Contain for explanation about loglevel argument.
Page Should Not Contain Button
locator, message=, loglevel=INFO
Verifies button identified by locator is not found from current page.
This keyword searches for buttons created with either input or button tag.
See Page Should Contain Element for explanation about message and loglevel arguments.
Key attributes for buttons are id, name and value. Visit the article "Selenium Robot Framework Element Locator"
Page Should Not Contain Checkbox
locator, message=, loglevel=INFO
Verifies checkbox identified by locator is not found from current page.
See Page Should Contain Element for explanation about message and loglevel arguments.
Key attributes for checkboxes are id and name.Visit the article "Selenium Robot Framework Element Locator"
Page Should Not Contain Element
locator, message=, loglevel=INFO
Verifies element identified by locator is not found on the current page.
message can be used to override the default error message.
See Page Should Contain for explanation about loglevel argument.
Key attributes for arbitrary elements are id and name. Visit the article "Selenium Robot Framework Element Locator"
Page Should Not Contain Image
locator, message=, loglevel=INFO
Verifies image identified by locator is found from current page.
See Page Should Contain Element for explanation about message and loglevel arguments.
Key attributes for images are id, src and alt. Visit the article "Selenium Robot Framework Element Locator"
Page Should Not Contain Link
locator, message=, loglevel=INFO
Verifies image identified by locator is not found from current page.
See Page Should Contain Element for explanation about message and loglevel arguments.
Key attributes for images are id, src and alt. Visit the article "Selenium Robot Framework Element Locator"
Page Should Not Contain List
locator, message=, loglevel=INFO
Verifies select list identified by locator is not found from current page.
See Page Should Contain Element for explanation about message and loglevel arguments.
Key attributes for lists are id and name. Visit the article "Selenium Robot Framework Element Locator"
Page Should Not Contain Radio Button
locator, message=, loglevel=INFO
Verifies radio button identified by locator is not found from current page.
See Page Should Contain Element for explanation about message and loglevel arguments.
Key attributes for radio buttons are id, name and value. Visit the article "Selenium Robot Framework Element Locator"
Page Should Not Contain Textfield
locator, message=, loglevel=INFO
Verifies text field identified by locator is not found from current page.
See Page Should Contain Element for explanation about message and loglevel arguments.
Key attributes for text fields are id and name. Visit the article "Selenium Robot Framework Element Locator"
Press Key
locator, key
Simulates user pressing key on element identified by locator.
key is either a single character, or a numerical ASCII code of the key lead by '\'.
Examples:
Press Key
text_field
q
Press Key
login_button
\13
# ASCII code for enter key
Radio Button Should Be Set To
group_name, value
Verifies radio button group identified by group_name has its selection set to value.
See Select Radio Button for information about how radio buttons are located.
Radio Button Should Not Be Selected
group_name
Verifies radio button group identified by group_name has no selection.
See Select Radio Button for information about how radio buttons are located.
Register Keyword To Run On Failure
keyword
Sets the keyword to execute when a Selenium2Library keyword fails.
keyword_name is the name of a keyword (from any available libraries) that will be executed if a Selenium2Library keyword fails. It is not possible to use a keyword that requires arguments. Using the value "Nothing" will disable this feature altogether.
The initial keyword to use is set in importing, and the keyword that is used by default is Capture Page Screenshot. Taking a screenshot when something failed is a very useful feature, but notice that it can slow down the execution.
This keyword returns the name of the previously registered failure keyword. It can be used to restore the original value later.
Example:
Register Keyword To Run On Failure
Log Source
# Run Log Source on failure.
${previous kw}=
Register Keyword To Run On Failure
Nothing
# Disables run-on-failure functionality and stores the previous kw name in a variable.
Register Keyword To Run On Failure
${previous kw}
# Restore to the previous keyword.
This run-on-failure functionality only works when running tests on Python/Jython 2.4 or newer and it does not work on IronPython at all.
Reload Page
Simulates user reloading page.
Select All From List
locator
Selects all values from multi-select list identified by id.
Key attributes for lists are id and name. Visit the article "Selenium Robot Framework Element Locator"
Select Checkbox
locator
Selects checkbox identified by locator.
Does nothing if checkbox is already selected. Key attributes for checkboxes are id and name.Visit the article "Selenium Robot Framework Element Locator"
Select Frame
locator
Sets frame identified by locator as current frame.
Key attributes for frames are id and name. Visit the article "Selenium Robot Framework Element Locator"
Select From List
locator, *items
Selects *items from list identified by locator
If more than one value is given for a single-selection list, the last value will be selected. If the target list is a multi-selection list, and *items is an empty list, all values of the list will be selected.
*items try to select by value then by label.
It's faster to use 'by index/value/label' functions.
An exception is raised for a single-selection list if the last value does not exist in the list and a warning for all other non- existing items. For a multi-selection list, an exception is raised for any and all non-existing values.
Select list keywords work on both lists and combo boxes. Key attributes for select lists are id and name. Visit the article "Selenium Robot Framework Element Locator"
Select From List By Index
locator, *indexes
Selects *indexes from list identified by locator
Select list keywords work on both lists and combo boxes. Key attributes for select lists are id and name. Visit the article "Selenium Robot Framework Element Locator"
Select From List By Label
locator, *labels
Selects *labels from list identified by locator
Select list keywords work on both lists and combo boxes. Key attributes for select lists are id and name. Visit the article "Selenium Robot Framework Element Locator"
Select From List By Value
locator, *values
Selects *values from list identified by locator
Select list keywords work on both lists and combo boxes. Key attributes for select lists are id and name. Visit the article "Selenium Robot Framework Element Locator"
Select Radio Button
group_name, value
Sets selection of radio button group identified by group_name to value.
The radio button to be selected is located by two arguments:
·         group_name is used as the name of the radio input
·         value is used for the value attribute or for the id attribute
The XPath used to locate the correct radio button then looks like this: //input[@type='radio' and @name='group_name' and (@value='value' or @id='value')]
Examples:
Select Radio Button
size
XL
# Matches HTML like <input type="radio" name="size" value="XL">XL</input>
Select Radio Button
size
sizeXL
# Matches HTML like <input type="radio" name="size" value="XL" id="sizeXL">XL</input>
Select Window
locator=None
Selects the window found with locator as the context of actions.
If the window is found, all subsequent commands use that window, until this keyword is used again. If the window is not found, this keyword fails.
By default, when a locator value is provided, it is matched against the title of the window and the javascript name of the window. If multiple windows with same identifier are found, the first one is selected.
Special locator main (default) can be used to select the main window.
It is also possible to specify the approach Selenium2Library should take to find a window by specifying a locator strategy:
Strategy
Example
Description
title
Select Window | title=My Document
Matches by window title
name
Select Window | name=${name}
Matches by window javascript name
url
Select Window | url=http://google.com
Matches by window's current URL
Example:
Click Link
popup_link
# opens new window
Select Window
popupName
Title Should Be
Popup Title
Select Window
# Chooses the main window again
Set Browser Implicit Wait
seconds
Sets current browser's implicit wait in seconds.
From selenium 2 function 'Sets a sticky timeout to implicitly wait for an element to be found, or a command to complete. This method only needs to be called one time per session.'
Example:
Set Browser Implicit Wait
10 seconds
See also Set Selenium Implicit Wait.
Set Selenium Implicit Wait
seconds
Sets Selenium 2's default implicit wait in seconds and sets the implicit wait for all open browsers.
From selenium 2 function 'Sets a sticky timeout to implicitly wait for an element to be found, or a command to complete. This method only needs to be called one time per session.'
Example:
${orig wait} =
Set Selenium Implicit Wait
10 seconds
Perform AJAX call that is slow
Set Selenium Implicit Wait
${orig wait}
Set Selenium Speed
seconds
Sets the delay in seconds that is waited after each Selenium command.
This is useful mainly in slowing down the test execution to be able to view the execution. seconds may be given in Robot Framework time format. Returns the previous speed value.
Example:
Set Selenium Speed
.5 seconds
Set Selenium Timeout
seconds
Sets the timeout in seconds used by various keywords.
There are several Wait ... keywords that take timeout as an argument. All of these timeout arguments are optional. The timeout used by all of them can be set globally using this keyword.
The previous timeout value is returned by this keyword and can be used to set the old value back later. The default timeout is 5 seconds, but it can be altered in importing.
Example:
${orig timeout} =
Set Selenium Timeout
15 seconds
Open page that loads slowly
Set Selenium Timeout
${orig timeout}
Set Window Size
width, height
Sets the width and height of the current window to the specified values.
Example:
Set Window Size
${800}
${600}
${width}
${height}=
Get Window Size
Should Be Equal
${width}
${800}
Should Be Equal
${height}
${600}
Simulate
locator, event
Simulates event on element identified by locator.
This keyword is useful if element has OnEvent handler that needs to be explicitly invoked.Visit the article "Selenium Robot Framework Element Locator"
Submit Form
locator=None
Submits a form identified by locator.
If locator is empty, first form in the page will be submitted. Key attributes for forms are id and name. Visit the article "Selenium Robot Framework Element Locator"
Switch Browser
index_or_alias
Switches between active browsers using index or alias.
Index is returned from Open Browser and alias can be given to it.
Example:
Open Browser
http://google.com
ff
Location Should Be
http://google.com
Open Browser
http://yahoo.com
ie
2nd conn
Location Should Be
http://yahoo.com
Switch Browser
1
# index
Page Should Contain
I'm feeling lucky
Switch Browser
2nd conn
# alias
Page Should Contain
More Yahoo!
Close All Browsers
Above example expects that there was no other open browsers when opening the first one because it used index '1' when switching to it later. If you aren't sure about that you can store the index into a variable as below.
${id} =
Open Browser
http://google.com
*firefox
# Do something ...
Switch Browser
${id}
Table Cell Should Contain
table_locator, row, column, expected, loglevel=INFO
Verifies that a certain cell in a table contains expected.
Row and column number start from 1. This keyword passes if the specified cell contains the given content. If you want to test that the cell content matches exactly, or that it e.g. starts with some text, use Get Table Cell keyword in combination with built-in keywords such as Should Be Equal or Should Start With.
Table Column Should Contain
table_locator, col, expected, loglevel=INFO
Verifies that a specific column contains expected.
The first leftmost column is column number 1. If the table contains cells that span multiple columns, those merged cells count as a single column. For example both tests below work, if in one row columns A and B are merged with colspan="2", and the logical third column contains "C".
Example:
Table Column Should Contain
tableId
3
C
Table Column Should Contain
tableId
2
C
See Page Should Contain Element for explanation about loglevel argument.
Table Footer Should Contain
table_locator, expected, loglevel=INFO
Verifies that the table footer contains expected.
With table footer can be described as any <td>-element that is child of a <tfoot>-element.
See Page Should Contain Element for explanation about loglevel argument.
Table Header Should Contain
table_locator, expected, loglevel=INFO
Verifies that the table header, i.e. any <th>...</th> element, contains expected.See Page Should Contain Element for explanation about loglevel argument.
Table Row Should Contain
table_locator, row, expected, loglevel=INFO
Verifies that a specific table row contains expected.
The uppermost row is row number 1. For tables that are structured with thead, tbody and tfoot, only the tbody section is searched. Please use Table Header Should Contain or Table Footer Should Contain for tests against the header or footer content.
If the table contains cells that span multiple rows, a match only occurs for the uppermost row of those merged cells.
See Page Should Contain Element for explanation about loglevel argument.
Table Should Contain
table_locator, expected, loglevel=INFO
Verifies that expected can be found somewhere in the table.See Page Should Contain Elementfor explanation about loglevel argument.
Textarea Should Contain
locator, expected, message=
Verifies text area identified by locator contains text expected.
message can be used to override default error message.
Key attributes for text areas are id and name. Visit the article "Selenium Robot Framework Element Locator"
Textarea Value Should Be
locator, expected, message=
Verifies the value in text area identified by locator is exactly expected.
message can be used to override default error message.
Key attributes for text areas are id and name. Visit the article "Selenium Robot Framework Element Locator"
Textfield Should Contain
locator, expected, message=
Verifies text field identified by locator contains text expected.
message can be used to override default error message.
Key attributes for text fields are id and name. See introduction for details about locating elements.
Textfield Value Should Be
locator, expected, message=
Verifies the value in text field identified by locator is exactly expected.
message can be used to override default error message.
Key attributes for text fields are id and name. Visit the article "Selenium Robot Framework Element Locator"
Title Should Be
title
Verifies that current page title equals title.
Unselect Checkbox
locator
Removes selection of checkbox identified by locator.
Does nothing if the checkbox is not checked. Key attributes for checkboxes are id and name.Visit the article "Selenium Robot Framework Element Locator"
Unselect Frame
Sets the top frame as the current frame.
Unselect From List
locator, *items
Unselects given values from select list identified by locator.
As a special case, giving empty list as *items will remove all selections.
*items try to unselect by value AND by label.
It's faster to use 'by index/value/label' functions.
Select list keywords work on both lists and combo boxes. Key attributes for select lists are id and name. Visit the article "Selenium Robot Framework Element Locator"
Unselect From List By Index
locator, *indexes
Unselects *indexes from list identified by locator
Select list keywords work on both lists and combo boxes. Key attributes for select lists are id and name. Visit the article "Selenium Robot Framework Element Locator"
Unselect From List By Label
locator, *labels
Unselects *labels from list identified by locator
Select list keywords work on both lists and combo boxes. Key attributes for select lists are id and name. Visit the article "Selenium Robot Framework Element Locator"
Unselect From List By Value
locator, *values
Unselects *values from list identified by locator
Select list keywords work on both lists and combo boxes. Key attributes for select lists are id and name. Visit the article "Selenium Robot Framework Element Locator"
Wait For Condition
condition, timeout=None, error=None
Waits until the given condition is true or timeout expires.
code may contain multiple lines of code but must contain a return statement (with the value to be returned) at the end
The condition can be arbitrary JavaScript expression but must contain a return statement (with the value to be returned) at the end. See Execute JavaScript for information about accessing the actual contents of the window through JavaScript.
error can be used to override the default error message.See also Wait Until Page Contains, Wait Until Page Contains Element, Wait Until Element Is Visible and BuiltIn keyword Wait Until Keyword Succeeds.
Wait Until Element Is Visible
locator, timeout=None, error=None
Waits until element specified with locator is visible.Fails if timeout expires before the element is visible. See also Wait Until Page Contains, Wait Until Page Contains Element, Wait For Condition and BuiltIn keyword Wait Until Keyword Succeeds.
Wait Until Page Contains
text, timeout=None, error=None
Waits until text appears on current page.Fails if timeout expires before the text appears. See also Wait Until Page Contains Element, Wait For Condition, Wait Until Element Is Visible and BuiltIn keyword Wait Until Keyword Succeeds.
Wait Until Page Contains Element
locator, timeout=None, error=None
Waits until element specified with locator appears on current page.Fails if timeout expires before the element appears.
error can be used to override the default error message.
See also Wait Until Page Contains, Wait For Condition, Wait Until Element Is Visible and BuiltIn keyword Wait Until Keyword Succeeds.
Xpath Should Match X Times
xpath, expected_xpath_count, message=, loglevel=INFO
Verifies that the page contains the given number of elements located by the given xpath.
See Page Should Contain Element for explanation about message and loglevel arguments.