Selenium2Library

Version: 1.0.0
Scope: global
Named arguments: supported

Introduction

Selenium2Library is a web testing library for Robot Framework. It uses the Selenium 2 (WebDriver) libraries internally to control a web browser. See http://seleniumhq.org/docs/03_webdriver.html for more information on Selenium 2 and WebDriver. Selenium2Library 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 Prior to running test cases using Selenium2Library, Selenium2Library must be imported into your Robot test suite (see importing section), and the Open Browser keyword must be used to open a browser to the desired location. Locating elements All keywords in Selenium2Library that need to find an element on the page take an argument, locator. By default, when a locator value is provided, it is matched against the key attributes of the particular element type. For example, id and name are key attributes to all elements, and locating elements is easy using just the id as a locator. For example:: Click Element my_element It is also possible to specify the approach Selenium2Library should take to find an element by specifying a lookup strategy with a locator prefix. Supported strategies are:
Strategy 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
tag Click Element | tag=div Matches by HTML tag name
Table related keywords, such as Table Should Contain, work differently. By default, when a table locator value is provided, it will search for a table with the specified id attribute. For example: Table Should Contain my_table text More complex table lookup strategies are also supported:
Strategy Example Description
css Table Should Contain | css=table.my_class | text Matches by @id or @name attribute
xpath Table Should Contain | xpath=//table/[@name="my_table"] | text Matches by @id or @name attribute
Timeouts 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 the Set Selenium Timeout keyword. All timeouts can be given as numbers considered seconds (e.g. 0.5 or 42) or in Robot Framework's time syntax (e.g. '1.5 seconds' or '1 min 30 s'). For more information about the time syntax see: http://robotframework.googlecode.com/svn/trunk/doc/userguide/RobotFrameworkUserGuide.html#time-format.

Importing

Arguments Documentation
timeout=5.0, implicit_wait=0.0, run_on_failure=Capture Page Screenshot Selenium2Library can be imported with optional arguments. timeout is the default timeout used to wait for all waiting actions. It can be later set with Set Selenium Timeout. 'implicit_wait' is the implicit timeout that Selenium waits when looking for elements. It can be later set with 'Set Selenium Implicit Wait'. run_on_failure specifies the name of a keyword (from any available libraries) to execute when a Selenium2Library keyword fails. By default Capture Page Screenshot will be used to take a screenshot of the current page. Using the value "Nothing" will disable this feature altogether. See Register Keyword To Run On Failure keyword for more information about this functionality. Examples:
Library | Selenium2Library | 15 # Sets default timeout to 15 seconds
Library | Selenium2Library | 5 | Log Source # Sets default timeout to 5 seconds and runs Log Source on failure
Library | Selenium2Library | timeout=10 | run_on_failure=Nothing # Sets default timeout to 10 seconds and does nothing on failure

Shortcuts

Alert Should Be Present  ·  Assign Id To Element  ·  Capture Page Screenshot  ·  Checkbox Should Be Selected  ·  Checkbox Should Not Be Selected  ·  Choose Cancel On Next Confirmation  ·  Choose File  ·  Choose Ok On Next Confirmation  ·  Click Button  ·  Click Element  ·  Click Image  ·  Click Link  ·  Close All Browsers  ·  Close Browser  ·  Close Window  ·  Confirm Action  ·  Current Frame Contains  ·  Delete All Cookies  ·  Delete Cookie  ·  Double Click Element  ·  Element Should Be Disabled  ·  Element Should Be Enabled  ·  Element Should Be Visible  ·  Element Should Contain  ·  Element Should Not Be Visible  ·  Element Text Should Be  ·  Execute Async Javascript  ·  Execute Javascript  ·  Focus  ·  Frame Should Contain  ·  Get Alert Message  ·  Get All Links  ·  Get Cookie Value  ·  Get Cookies  ·  Get Element Attribute  ·  Get Horizontal Position  ·  Get List Items  ·  Get Location  ·  Get Matching Xpath Count  ·  Get Selected List Label  ·  Get Selected List Labels  ·  Get Selected List Value  ·  Get Selected List Values  ·  Get Selenium Implicit Wait  ·  Get Selenium Speed  ·  Get Selenium Timeout  ·  Get Source  ·  Get Table Cell  ·  Get Title  ·  Get Value  ·  Get Vertical Position  ·  Get Window Identifiers  ·  Get Window Names  ·  Get Window Titles  ·  Go Back  ·  Go To  ·  Input Password  ·  Input Text  ·  List Selection Should Be  ·  List Should Have No Selections  ·  Location Should Be  ·  Location Should Contain  ·  Log Location  ·  Log Source  ·  Log Title  ·  Maximize Browser Window  ·  Mouse Down  ·  Mouse Down On Image  ·  Mouse Down On Link  ·  Mouse Out  ·  Mouse Over  ·  Mouse Up  ·  Open Browser  ·  Open Context Menu  ·  Page Should Contain  ·  Page Should Contain Button  ·  Page Should Contain Checkbox  ·  Page Should Contain Element  ·  Page Should Contain Image  ·  Page Should Contain Link  ·  Page Should Contain List  ·  Page Should Contain Radio Button  ·  Page Should Contain Textfield  ·  Page Should Not Contain  ·  Page Should Not Contain Button  ·  Page Should Not Contain Checkbox  ·  Page Should Not Contain Element  ·  Page Should Not Contain Image  ·  Page Should Not Contain Link  ·  Page Should Not Contain List  ·  Page Should Not Contain Radio Button  ·  Page Should Not Contain Textfield  ·  Press Key  ·  Radio Button Should Be Set To  ·  Radio Button Should Not Be Selected  ·  Register Keyword To Run On Failure  ·  Reload Page  ·  Select All From List  ·  Select Checkbox  ·  Select Frame  ·  Select From List  ·  Select Radio Button  ·  Select Window  ·  Set Browser Implicit Wait  ·  Set Selenium Implicit Wait  ·  Set Selenium Speed  ·  Set Selenium Timeout  ·  Simulate  ·  Submit Form  ·  Switch Browser  ·  Table Cell Should Contain  ·  Table Column Should Contain  ·  Table Footer Should Contain  ·  Table Header Should Contain  ·  Table Row Should Contain  ·  Table Should Contain  ·  Textfield Should Contain  ·  Textfield Value Should Be  ·  Title Should Be  ·  Unselect Checkbox  ·  Unselect Frame  ·  Unselect From List  ·  Wait For Condition  ·  Wait Until Page Contains  ·  Wait Until Page Contains Element  ·  Xpath Should Match X Times

Keywords

Keyword Arguments Documentation
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. See introduction for details about locating elements.
Checkbox Should Not Be Selected locator Verifies checkbox identified by locator is not selected/checked. Key attributes for checkboxes are id and name. See introduction for details about locating elements.
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. See introduction for details about locating elements.
Click Element locator Click element identified by locator. Key attributes for arbitrary elements are id and name. See introduction for details about locating elements.
Click Image locator Clicks an image found by locator. Key attributes for images are id, src and alt. See introduction for details about locating elements.
Click Link locator Clicks a link identified by locator. Key attributes for links are id, name, href and link text. See introduction for details about locating elements.
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
Current Frame Contains 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. See introduction for details about locating elements.
Element Should Be Disabled locator Verifies that element identified with locator is disabled. Key attributes for arbitrary elements are id and name. See introduction for details about locating elements.
Element Should Be Enabled locator Verifies that element identified with locator is enabled. Key attributes for arbitrary elements are id and name. See introduction for details about locating elements.
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. See introduction for details about locating elements.
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. See introduction for details about locating elements.
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. See introduction for details about locating elements.
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. See introduction for details about locating elements.
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. See introduction for details about locating elements.
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. See introduction for details about locating elements.
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. Fails if there are zero or more than one selection. Select list keywords work on both lists and combo boxes. Key attributes for select lists are id and name. See introduction for details about locating elements.
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. See introduction for details about locating elements.
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. Fails if there are zero or more than one selection. Select list keywords work on both lists and combo boxes. Key attributes for select lists are id and name. See introduction for details about locating elements.
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. See introduction for details about locating elements.
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. To understand how tables are identified, please take a look at the introduction.
Get Title Returns title of current page.
Get Value locator Returns the value attribute of element identified by locator. See introduction for details about locating elements.
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 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. See introduction for details about locating elements.
Input Text locator, text Types the given text into text field identified by locator. See introduction for details about locating elements.
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. See introduction for details about locating elements.
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. See introduction for details about locating elements.
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. See introduction for details about locating elements. 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. See introduction for details about locating elements.
Mouse Down On Link locator Simulates a mouse down event on a link. Key attributes for links are id, name, href and link text. See introduction for details about locating elements.
Mouse Out locator Simulates moving mouse away from the element specified by locator. Key attributes for arbitrary elements are id and name. See introduction for details about locating elements.
Mouse Over locator Simulates hovering mouse over the element specified by locator. Key attributes for arbitrary elements are id and name. See introduction for details about locating elements.
Mouse Up locator Simulates releasing the left mouse button on the element specified by locator. Key attributes for arbitrary elements are id and name. See introduction for details about locating elements.
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
Note, that you will encounter strange behavior, if you open multiple Internet Explorer browser instances. That is also why Switch Browser only works with one IE browser at most. For more information see: http://selenium-grid.seleniumhq.org/faq.html#i_get_some_strange_errors_when_i_run_multiple_internet_explorer_instances_on_the_same_machine Optional 'remote_url' is the url for a remote selenium server for example http://127.0.0.1/wd/hub. If you specify a value for remote you can also specify 'desired_capabilities' which is a string in the form key1:val1,key2:val2 that will be used to specify desired_capabilities to the remote server. This is useful for doing things like specify a proxy server for internet explorer or for specify browser and os if your using saucelabs.com. 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. See introduction for details about locating elements.
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. See introduction for details about locating elements.
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. See introduction for details about locating elements.
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. See introduction for details about locating elements.
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. See introduction for details about locating elements.
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. See introduction for details about locating elements.
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. See introduction for details about locating elements.
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. See introduction for details about locating elements.
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. See introduction for details about locating elements.
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. See introduction for details about locating elements.
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. See introduction for details about locating elements.
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. See introduction for details about locating elements.
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. See introduction for details about locating elements.
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. See introduction for details about locating elements.
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. See introduction for details about locating elements.
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. See introduction for details about locating elements.
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. See introduction for details about locating elements.
Select Checkbox locator Selects checkbox identified by locator. Does nothing if checkbox is already selected. Key attributes for checkboxes are id and name. See introduction for details about locating elements.
Select Frame locator Sets frame identified by locator as current frame. Key attributes for frames are id and name. See introduction for details about locating elements.
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. Select list keywords work on both lists and combo boxes. Key attributes for select lists are id and name. See introduction for details about locating elements.
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. See introduction for more information about timeouts. 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}
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. See introduction for details about locating elements.
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. See introduction for details about locating elements.
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. To understand how tables are identified, please take a look at the introduction.
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
To understand how tables are identified, please take a look at the introduction. 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. To understand how tables are identified, please take a look at the introduction. 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. To understand how tables are identified, please take a look at the introduction. 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. To understand how tables are identified, please take a look at the introduction. 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. To understand how tables are identified, please take a look at the introduction. See Page Should Contain Element for explanation about loglevel argument.
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. See introduction for details about locating elements.
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. See introduction for details about locating elements.
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. Select list keywords work on both lists and combo boxes. Key attributes for select lists are id and name. See introduction for details about locating elements.
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 introduction for more information about timeout and its default value. See also Wait Until Page Contains, Wait Until Page Contains Element 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 introduction for more information about timeout and its default value. error can be used to override the default error message. See also Wait Until Page Contains Element, Wait For Condition 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. See introduction for more information about timeout and its default value. error can be used to override the default error message. See also Wait Until Page Contains, Wait For Condition 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.